@snapcall/stream-ui 1.2.0 → 1.3.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/stream-ui.esm.js +2050 -1005
- package/dist/stream-ui.js +2065 -1020
- package/dist/stream-ui.umd.js +485 -380
- package/dist/types.d.ts +154 -30
- package/package.json +5 -5
package/dist/stream-ui.js
CHANGED
|
@@ -4,11 +4,11 @@ var $jQDcL$reacthottoast = require("react-hot-toast");
|
|
|
4
4
|
var $jQDcL$styledcomponents = require("styled-components");
|
|
5
5
|
var $jQDcL$react = require("react");
|
|
6
6
|
require("inobounce");
|
|
7
|
+
var $jQDcL$bowser = require("bowser");
|
|
7
8
|
var $jQDcL$uuid = require("uuid");
|
|
8
9
|
var $jQDcL$protooclient = require("protoo-client");
|
|
9
10
|
var $jQDcL$mediasoupclient = require("mediasoup-client");
|
|
10
11
|
var $jQDcL$sentrybrowser = require("@sentry/browser");
|
|
11
|
-
var $jQDcL$bowser = require("bowser");
|
|
12
12
|
var $jQDcL$qrcode = require("qrcode");
|
|
13
13
|
|
|
14
14
|
function $parcel$export(e, n, v, s) {
|
|
@@ -51,6 +51,7 @@ const $3d32ce4f72782140$export$42a852a2b6b56249 = (0, ($parcel$interopDefault($j
|
|
|
51
51
|
flex-direction: row;
|
|
52
52
|
align-items: center;
|
|
53
53
|
width: ${(props)=>props.width};
|
|
54
|
+
max-width: 100%;
|
|
54
55
|
padding-top: 10px;
|
|
55
56
|
padding-right: ${(props)=>props.hasButton ? 15 : 20}px;
|
|
56
57
|
padding-bottom: 10px;
|
|
@@ -63,6 +64,7 @@ const $3d32ce4f72782140$export$42a852a2b6b56249 = (0, ($parcel$interopDefault($j
|
|
|
63
64
|
`;
|
|
64
65
|
const $3d32ce4f72782140$export$8f314e512d92575f = (0, ($parcel$interopDefault($jQDcL$styledcomponents))).div`
|
|
65
66
|
display: flex;
|
|
67
|
+
overflow: hidden;
|
|
66
68
|
|
|
67
69
|
svg,
|
|
68
70
|
img {
|
|
@@ -102,8 +104,8 @@ const $3d32ce4f72782140$export$c16180567ca88cd7 = (0, ($parcel$interopDefault($j
|
|
|
102
104
|
const $3d32ce4f72782140$export$353f5b6fc5456de1 = (0, ($parcel$interopDefault($jQDcL$styledcomponents))).button`
|
|
103
105
|
display: flex;
|
|
104
106
|
color: #fff;
|
|
105
|
-
background-color: #
|
|
106
|
-
border: 2px solid #
|
|
107
|
+
background-color: #2d2d2d;
|
|
108
|
+
border: 2px solid #343434;
|
|
107
109
|
border-radius: 50px;
|
|
108
110
|
padding: 4px 10px 6px;
|
|
109
111
|
font-weight: 700;
|
|
@@ -112,7 +114,7 @@ const $3d32ce4f72782140$export$353f5b6fc5456de1 = (0, ($parcel$interopDefault($j
|
|
|
112
114
|
box-sizing: border-box;
|
|
113
115
|
|
|
114
116
|
&:hover {
|
|
115
|
-
border: 2px solid #8d8d8d;
|
|
117
|
+
border: 2px solid #8d8d8d !important;
|
|
116
118
|
}
|
|
117
119
|
`;
|
|
118
120
|
const $3d32ce4f72782140$export$caedbd4804e2ac32 = (0, ($parcel$interopDefault($jQDcL$styledcomponents))).div`
|
|
@@ -146,17 +148,17 @@ const $3d32ce4f72782140$export$ccff7fe96c96c97 = (0, ($parcel$interopDefault($jQ
|
|
|
146
148
|
`;
|
|
147
149
|
const $3d32ce4f72782140$export$eed52d0855891930 = (0, ($parcel$interopDefault($jQDcL$styledcomponents))).div`
|
|
148
150
|
display: flex;
|
|
149
|
-
min-width:
|
|
150
|
-
min-height:
|
|
151
|
-
max-height:
|
|
152
|
-
max-width:
|
|
151
|
+
min-width: 14px;
|
|
152
|
+
min-height: 14px;
|
|
153
|
+
max-height: 14px;
|
|
154
|
+
max-width: 14px;
|
|
153
155
|
margin-right: 5px;
|
|
154
156
|
overflow: hidden;
|
|
155
157
|
|
|
156
158
|
img,
|
|
157
159
|
svg {
|
|
158
|
-
width:
|
|
159
|
-
height:
|
|
160
|
+
width: 14px;
|
|
161
|
+
height: 14px;
|
|
160
162
|
border-radius: 50px;
|
|
161
163
|
box-sizing: border-box;
|
|
162
164
|
object-fit: cover;
|
|
@@ -164,6 +166,18 @@ const $3d32ce4f72782140$export$eed52d0855891930 = (0, ($parcel$interopDefault($j
|
|
|
164
166
|
`;
|
|
165
167
|
|
|
166
168
|
|
|
169
|
+
const $c0a266a61addea66$export$5640675ad9afe3e2 = (event)=>{
|
|
170
|
+
event.currentTarget.onerror = null;
|
|
171
|
+
const imageContainer = event.currentTarget?.parentElement;
|
|
172
|
+
const notificationContainer = imageContainer?.parentElement;
|
|
173
|
+
if (notificationContainer) notificationContainer.style.paddingLeft = "20px";
|
|
174
|
+
imageContainer?.remove();
|
|
175
|
+
};
|
|
176
|
+
const $c0a266a61addea66$export$d8de94b16800bb18 = (event)=>{
|
|
177
|
+
event.currentTarget.onerror = null;
|
|
178
|
+
const imageContainer = event.currentTarget?.parentElement;
|
|
179
|
+
imageContainer?.remove();
|
|
180
|
+
};
|
|
167
181
|
const $c0a266a61addea66$export$14834abbfce3b8cd = ({ children: children , options: options = {} })=>{
|
|
168
182
|
const width = options.width || "auto";
|
|
169
183
|
const backgroundColor = options.backgroundColor || "rgba(45, 45, 45, 0.75)";
|
|
@@ -176,7 +190,8 @@ const $c0a266a61addea66$export$14834abbfce3b8cd = ({ children: children , option
|
|
|
176
190
|
options.icon && (typeof options.icon === "string" ? /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)((0, $3d32ce4f72782140$export$8f314e512d92575f), {
|
|
177
191
|
children: /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)("img", {
|
|
178
192
|
alt: "Icon",
|
|
179
|
-
src: options.icon
|
|
193
|
+
src: options.icon,
|
|
194
|
+
onError: $c0a266a61addea66$export$5640675ad9afe3e2
|
|
180
195
|
})
|
|
181
196
|
}) : /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)((0, $3d32ce4f72782140$export$8f314e512d92575f), {
|
|
182
197
|
children: options.icon
|
|
@@ -215,12 +230,14 @@ const $c0a266a61addea66$export$14834abbfce3b8cd = ({ children: children , option
|
|
|
215
230
|
]
|
|
216
231
|
}),
|
|
217
232
|
options.button && /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsxs)((0, $3d32ce4f72782140$export$353f5b6fc5456de1), {
|
|
233
|
+
style: options.button.style,
|
|
218
234
|
onClick: options.button.action,
|
|
219
235
|
children: [
|
|
220
236
|
options.button.icon && (typeof options.button.icon === "string" ? /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)((0, $3d32ce4f72782140$export$caedbd4804e2ac32), {
|
|
221
237
|
children: /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)("img", {
|
|
222
238
|
alt: "Button icon",
|
|
223
|
-
src: options.button.icon
|
|
239
|
+
src: options.button.icon,
|
|
240
|
+
onError: $c0a266a61addea66$export$d8de94b16800bb18
|
|
224
241
|
})
|
|
225
242
|
}) : /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)((0, $3d32ce4f72782140$export$caedbd4804e2ac32), {
|
|
226
243
|
children: options.button.icon
|
|
@@ -298,6 +315,7 @@ const $84c6cbcbb594d072$export$3a57e165650c636f = (message, options = {})=>{
|
|
|
298
315
|
|
|
299
316
|
|
|
300
317
|
|
|
318
|
+
|
|
301
319
|
const $6a90fae7e584afd4$var$audioContextConstructor = window.AudioContext || window.webkitAudioContext;
|
|
302
320
|
const $6a90fae7e584afd4$var$AUDIO_MUTE_DETECTION_TIME = 2000;
|
|
303
321
|
const $6a90fae7e584afd4$var$SPEAK_DETECTION_TIME = 500;
|
|
@@ -392,8 +410,14 @@ class $6a90fae7e584afd4$export$ea669869acd8f177 {
|
|
|
392
410
|
this.stream.getTracks().forEach((track)=>{
|
|
393
411
|
this.stream.removeTrack(track);
|
|
394
412
|
});
|
|
395
|
-
|
|
396
|
-
|
|
413
|
+
try {
|
|
414
|
+
this.audioStreamSource.disconnect(this.analyser);
|
|
415
|
+
} catch (err1) {
|
|
416
|
+
console.error("audioStreamSource failed to disconnect", err1);
|
|
417
|
+
}
|
|
418
|
+
this.audioContext.close().catch((err)=>{
|
|
419
|
+
console.error("audioContext failed to close", err);
|
|
420
|
+
});
|
|
397
421
|
this.audioLevels = [];
|
|
398
422
|
}
|
|
399
423
|
static isAPIAvailable() {
|
|
@@ -402,43 +426,77 @@ class $6a90fae7e584afd4$export$ea669869acd8f177 {
|
|
|
402
426
|
}
|
|
403
427
|
|
|
404
428
|
|
|
429
|
+
class $1bfa11322d1d6377$var$AudioRenderer {
|
|
430
|
+
constructor({ consumerId: consumerId }){
|
|
431
|
+
this.consumerId = consumerId;
|
|
432
|
+
this.audio = new Audio();
|
|
433
|
+
this.audio.id = consumerId;
|
|
434
|
+
this.audio.autoplay = true;
|
|
435
|
+
document.body.appendChild(this.audio);
|
|
436
|
+
}
|
|
437
|
+
destroy() {
|
|
438
|
+
this.audio.pause();
|
|
439
|
+
this.audio.srcObject = null;
|
|
440
|
+
document.body.removeChild(this.audio);
|
|
441
|
+
}
|
|
442
|
+
setSource(srcObject) {
|
|
443
|
+
this.audio.srcObject = srcObject;
|
|
444
|
+
}
|
|
445
|
+
async setSink(sinkId) {
|
|
446
|
+
await this.audio.setSinkId?.(sinkId);
|
|
447
|
+
}
|
|
448
|
+
async play() {
|
|
449
|
+
await this.audio.play().catch((err)=>{
|
|
450
|
+
console.warn("failed to play");
|
|
451
|
+
setTimeout(()=>{
|
|
452
|
+
this.play();
|
|
453
|
+
}, 1000);
|
|
454
|
+
});
|
|
455
|
+
}
|
|
456
|
+
}
|
|
457
|
+
var $1bfa11322d1d6377$export$2e2bcd8739ae039 = $1bfa11322d1d6377$var$AudioRenderer;
|
|
458
|
+
|
|
459
|
+
|
|
460
|
+
|
|
461
|
+
const $67e3b71ab2fb8185$export$218be676a714a9df = '<svg width="103" height="36" fill="none" xmlns="http://www.w3.org/2000/svg"><g opacity=".8" fill="#fff"><path d="M10.994 33.06c.903 0 1.658-.734 1.392-1.581a5.249 5.249 0 0 0-1.279-2.124 5.171 5.171 0 0 0-3.673-1.535 5.171 5.171 0 0 0-3.673 1.535c-.595.6-1.03 1.33-1.28 2.124-.265.847.49 1.582 1.393 1.582h7.12ZM10.65 16.2c-.902 0-1.658.735-1.392 1.582.25.794.685 1.524 1.28 2.124a5.171 5.171 0 0 0 3.672 1.535 5.172 5.172 0 0 0 3.674-1.535 5.25 5.25 0 0 0 1.279-2.124c.266-.847-.49-1.582-1.393-1.582h-7.12ZM14.21 31.455c0 .887.75 1.63 1.606 1.35a5.187 5.187 0 0 0 2.067-1.279 5.264 5.264 0 0 0 1.521-3.706c0-1.39-.547-2.723-1.52-3.705a5.187 5.187 0 0 0-2.068-1.278c-.856-.281-1.606.462-1.606 1.349v7.27ZM7.434 17.806c0-.887-.75-1.63-1.607-1.35a5.186 5.186 0 0 0-2.066 1.279 5.264 5.264 0 0 0-1.522 3.706c0 1.39.548 2.723 1.522 3.705a5.186 5.186 0 0 0 2.066 1.278c.857.281 1.607-.462 1.607-1.349v-7.27Z"/><path d="M32.965 31.098c-1.442 0-2.601-.227-3.478-.68-.865-.465-1.517-1.043-1.955-1.734a.416.416 0 0 1-.052-.187c0-.125.057-.227.173-.306l.986-.731a.286.286 0 0 1 .208-.085c.103 0 .201.062.294.187.773 1.224 2.07 1.836 3.893 1.836.796 0 1.471-.142 2.025-.425.565-.284.848-.737.848-1.36 0-.465-.161-.827-.485-1.088-.311-.26-.796-.493-1.453-.697-.6-.181-.975-.289-1.125-.323-.992-.283-1.707-.504-2.146-.663-1.107-.408-1.84-.878-2.198-1.41-.357-.534-.536-1.089-.536-1.667 0-.476.15-.986.45-1.53.311-.555.796-1.025 1.453-1.41.67-.397 1.506-.595 2.51-.595 1.05 0 1.932.13 2.647.39.716.25 1.396.67 2.042 1.258.081.08.121.159.121.238 0 .114-.057.204-.173.272l-1.107.731a.469.469 0 0 1-.225.085c-.104 0-.202-.05-.294-.153-.692-.725-1.644-1.088-2.856-1.088-.692 0-1.228.102-1.609.306-.37.204-.617.431-.744.68-.115.25-.173.47-.173.663 0 .408.162.737.485.986.323.25.801.476 1.436.68.058.023.502.153 1.332.391.52.136 1.056.29 1.61.46 1.21.396 2.019.9 2.422 1.512.416.612.623 1.201.623 1.768 0 .612-.15 1.196-.45 1.75-.288.556-.801 1.02-1.54 1.395-.727.362-1.713.544-2.959.544ZM44.114 21.766c.865 0 1.667.249 2.405.748.739.487 1.108 1.388 1.108 2.702v5.321a.364.364 0 0 1-.104.272c-.058.057-.144.085-.26.085H46.14a.423.423 0 0 1-.277-.085.407.407 0 0 1-.087-.272v-5.032c-.035-.646-.22-1.155-.554-1.53-.323-.373-.744-.56-1.263-.56-.37 0-.738.102-1.107.306-.358.192-.664.492-.918.9-.253.397-.403.896-.45 1.496v4.42a.365.365 0 0 1-.103.272c-.058.057-.145.085-.26.085h-1.125a.423.423 0 0 1-.276-.085.407.407 0 0 1-.087-.272v-8.193c0-.114.029-.199.087-.255a.378.378 0 0 1 .276-.102h1.125c.116 0 .202.034.26.102.069.056.103.141.103.255v.204c0 .079.012.141.035.187a.168.168 0 0 0 .121.05c.092 0 .214-.062.364-.186a4.02 4.02 0 0 1 1.038-.612c.38-.148.738-.221 1.073-.221ZM57.436 28.207c.023.34.081.607.173.8.093.18.289.322.589.424.184.068.277.165.277.29a.396.396 0 0 1-.052.17l-.485.951c-.092.204-.242.278-.45.221-.669-.147-1.13-.47-1.384-.969-.058-.124-.115-.187-.173-.187-.058 0-.121.046-.19.136-.6.714-1.575 1.071-2.925 1.071-.819 0-1.482-.141-1.99-.425-.496-.283-.848-.623-1.056-1.02-.207-.408-.311-.799-.311-1.173 0-.612.19-1.161.571-1.648.392-.488.975-.828 1.748-1.02.53-.125 1.269-.221 2.215-.29.646-.045 1.113-.09 1.401-.135.231-.034.335-.17.312-.408-.058-.51-.23-.918-.52-1.224-.276-.318-.743-.476-1.4-.476-.428 0-.837.09-1.23.272-.38.17-.674.47-.882.9-.104.216-.254.29-.45.222l-1.055-.29c-.185-.056-.277-.152-.277-.288 0-.034.011-.085.034-.153a3.292 3.292 0 0 1 1.367-1.564c.635-.397 1.46-.595 2.475-.595.992 0 1.834.255 2.526.765.693.498 1.062 1.224 1.108 2.176.011.453.017 1.06.017 1.819.012.759.017 1.308.017 1.648Zm-4.326 1.445c.312 0 .652-.073 1.021-.22.38-.148.715-.403 1.004-.766.3-.374.484-.872.554-1.495v-.034c0-.114-.035-.199-.104-.256-.07-.067-.162-.09-.277-.067l-.675.067c-.75.069-1.361.148-1.834.238-.462.08-.86.227-1.194.442a.984.984 0 0 0-.485.884c0 .465.208.782.623.952.416.17.871.255 1.367.255ZM64.486 21.766c1.107 0 1.967.26 2.578.782.611.51 1.027 1.116 1.246 1.819a6.83 6.83 0 0 1 .329 2.073c0 .692-.11 1.389-.329 2.091-.22.692-.635 1.298-1.246 1.82-.611.509-1.47.764-2.578.764-.9 0-1.65-.238-2.25-.714-.08-.08-.161-.119-.242-.119-.116 0-.173.096-.173.29v3.569c0 .113-.035.198-.104.255-.058.068-.144.102-.26.102H60.42a.378.378 0 0 1-.277-.102c-.058-.057-.086-.142-.086-.255V22.344c0-.114.028-.199.086-.255a.378.378 0 0 1 .277-.102h1.038c.116 0 .202.034.26.102.069.056.104.141.104.255 0 .09.011.164.034.22.035.046.075.069.122.069.057 0 .109-.023.155-.068.612-.533 1.396-.8 2.354-.8Zm-.173 7.785c.888 0 1.54-.3 1.955-.9.427-.601.64-1.338.64-2.21 0-.873-.213-1.61-.64-2.21-.415-.601-1.067-.902-1.955-.902-.877 0-1.518.3-1.921.901-.393.59-.589 1.326-.589 2.21 0 .884.197 1.627.589 2.227.403.59 1.044.884 1.92.884ZM76.268 31.097c-1.316 0-2.452-.277-3.41-.833a5.531 5.531 0 0 1-2.163-2.277c-.484-.975-.726-2.08-.726-3.315 0-1.236.242-2.335.727-3.298a5.507 5.507 0 0 1 2.163-2.295c.957-.555 2.094-.833 3.409-.833 1.246 0 2.324.25 3.236.748a5.437 5.437 0 0 1 2.163 2.09c.034.069.052.131.052.188 0 .125-.087.215-.26.272l-1.298.323a.39.39 0 0 1-.12.017c-.151 0-.266-.074-.347-.221-.715-1.156-1.857-1.734-3.426-1.734-.97 0-1.771.221-2.406.663a3.907 3.907 0 0 0-1.401 1.75c-.3.715-.45 1.491-.45 2.33 0 .838.15 1.615.45 2.329.3.713.767 1.291 1.401 1.733.635.442 1.437.663 2.406.663.911 0 1.701-.21 2.37-.628.681-.42 1.165-1.06 1.454-1.921.08-.216.225-.306.433-.272l1.315.17c.196.034.294.124.294.272 0 .022-.012.079-.035.17-.507 1.303-1.246 2.283-2.215 2.94-.957.646-2.163.97-3.616.97ZM91.216 28.207c.023.34.08.607.173.8.092.18.288.322.588.424.185.068.277.165.277.29a.396.396 0 0 1-.052.17l-.484.951c-.093.204-.243.278-.45.221-.67-.147-1.13-.47-1.385-.969-.057-.124-.115-.187-.173-.187-.057 0-.12.046-.19.136-.6.714-1.575 1.071-2.925 1.071-.819 0-1.482-.141-1.99-.425-.496-.283-.848-.623-1.055-1.02-.208-.408-.312-.799-.312-1.173 0-.612.19-1.161.571-1.648.393-.488.975-.828 1.748-1.02.53-.125 1.27-.221 2.215-.29.646-.045 1.113-.09 1.402-.135.23-.034.334-.17.311-.408-.057-.51-.23-.918-.519-1.224-.277-.318-.744-.476-1.401-.476-.427 0-.837.09-1.23.272-.38.17-.674.47-.882.9-.103.216-.254.29-.45.222l-1.055-.29c-.185-.056-.277-.152-.277-.288a.53.53 0 0 1 .034-.153 3.293 3.293 0 0 1 1.368-1.564c.634-.397 1.459-.595 2.474-.595.992 0 1.834.255 2.527.765.692.498 1.06 1.224 1.107 2.176.012.453.017 1.06.017 1.819.012.759.018 1.308.018 1.648Zm-4.326 1.445c.311 0 .651-.073 1.02-.22.381-.148.716-.403 1.004-.766.3-.374.485-.872.554-1.495v-.034c0-.114-.035-.199-.104-.256-.07-.067-.161-.09-.277-.067l-.675.067c-.75.069-1.36.148-1.834.238-.461.08-.86.227-1.194.442a.984.984 0 0 0-.484.884c0 .465.207.782.622.952.416.17.871.255 1.368.255ZM95.687 30.536a.364.364 0 0 1-.104.272c-.058.057-.144.085-.26.085h-1.125a.424.424 0 0 1-.277-.085.407.407 0 0 1-.086-.272V18.79c0-.114.029-.199.086-.255a.378.378 0 0 1 .277-.102h1.125c.116 0 .202.034.26.102.069.056.104.141.104.255v11.746ZM100.033 30.536a.364.364 0 0 1-.104.272c-.057.057-.144.085-.26.085h-1.124a.423.423 0 0 1-.277-.085.407.407 0 0 1-.086-.272V18.79c0-.114.028-.199.086-.255a.378.378 0 0 1 .277-.102h1.125c.115 0 .202.034.26.102.069.056.103.141.103.255v11.746Z" stroke="#fff" stroke-width=".5"/><path d="M43.151 8.686c.296 0 .554-.036.774-.108.22-.076.402-.182.546-.318.148-.14.258-.308.33-.504.072-.2.108-.422.108-.666a1.75 1.75 0 0 0-.108-.63 1.245 1.245 0 0 0-.324-.48 1.41 1.41 0 0 0-.546-.3 2.516 2.516 0 0 0-.78-.108h-1.206v3.114h1.206Zm0-4.362c.58 0 1.082.068 1.506.204.424.136.774.326 1.05.57.276.244.48.536.612.876.136.34.204.712.204 1.116 0 .42-.07.806-.21 1.158-.14.348-.35.648-.63.9s-.632.448-1.056.588c-.42.14-.912.21-1.476.21h-1.206V13h-1.614V4.324h2.82Zm6.819 2.424c.456 0 .87.074 1.242.222a2.692 2.692 0 0 1 1.578 1.626c.144.392.216.83.216 1.314 0 .488-.072.928-.216 1.32-.144.392-.35.726-.618 1.002a2.653 2.653 0 0 1-.96.636 3.333 3.333 0 0 1-1.242.222c-.46 0-.878-.074-1.254-.222a2.712 2.712 0 0 1-.966-.636 2.922 2.922 0 0 1-.618-1.002 3.807 3.807 0 0 1-.216-1.32c0-.484.072-.922.216-1.314.148-.392.354-.724.618-.996.268-.272.59-.482.966-.63a3.397 3.397 0 0 1 1.254-.222Zm0 5.202c.512 0 .89-.172 1.134-.516.248-.344.372-.848.372-1.512s-.124-1.17-.372-1.518c-.244-.348-.622-.522-1.134-.522-.52 0-.906.176-1.158.528-.248.348-.372.852-.372 1.512s.124 1.164.372 1.512c.252.344.638.516 1.158.516Zm12.85-5.106L60.866 13h-1.188c-.136 0-.23-.088-.282-.264L58.29 9.178c-.036-.12-.07-.238-.102-.354a5.729 5.729 0 0 1-.072-.36 6.81 6.81 0 0 1-.084.366c-.028.12-.06.24-.096.36l-1.122 3.546c-.048.176-.154.264-.318.264h-1.14l-1.95-6.156h1.182c.108 0 .2.026.276.078a.363.363 0 0 1 .15.198l.882 3.288c.044.18.082.356.114.528.036.172.066.344.09.516.044-.172.09-.344.138-.516l.162-.528 1.02-3.3a.382.382 0 0 1 .138-.198.429.429 0 0 1 .258-.078h.654c.104 0 .192.026.264.078a.363.363 0 0 1 .15.198l.99 3.3c.052.18.1.358.144.534.048.172.094.344.138.516.052-.34.126-.69.222-1.05l.906-3.288a.405.405 0 0 1 .15-.198.429.429 0 0 1 .258-.078h1.128Zm4.704 2.37c0-.192-.028-.372-.084-.54a1.25 1.25 0 0 0-.24-.45 1.096 1.096 0 0 0-.414-.3 1.358 1.358 0 0 0-.576-.114c-.428 0-.766.122-1.014.366-.244.244-.4.59-.468 1.038h2.796Zm-2.826.894c.024.316.08.59.168.822.088.228.204.418.348.57.144.148.314.26.51.336.2.072.42.108.66.108.24 0 .446-.028.618-.084a2.76 2.76 0 0 0 .456-.186 7.55 7.55 0 0 0 .342-.186.59.59 0 0 1 .288-.084c.124 0 .216.046.276.138l.426.54a2.536 2.536 0 0 1-.552.486 3.281 3.281 0 0 1-1.32.474 4.79 4.79 0 0 1-.666.048 3.33 3.33 0 0 1-1.194-.21 2.726 2.726 0 0 1-.96-.63 2.993 2.993 0 0 1-.642-1.032c-.156-.412-.234-.888-.234-1.428 0-.42.068-.814.204-1.182.136-.372.33-.694.582-.966.256-.276.566-.494.93-.654.368-.16.782-.24 1.242-.24.388 0 .746.062 1.074.186.328.124.61.306.846.546.236.236.42.528.552.876.136.344.204.738.204 1.182 0 .224-.024.376-.072.456-.048.076-.14.114-.276.114h-3.81Zm6.668-2.196c.192-.368.42-.656.684-.864a1.45 1.45 0 0 1 .936-.318c.284 0 .512.062.684.186l-.096 1.11a.294.294 0 0 1-.09.156.239.239 0 0 1-.15.042c-.06 0-.15-.01-.27-.03a2.01 2.01 0 0 0-.342-.03 1.11 1.11 0 0 0-.786.282c-.1.088-.19.196-.27.324a3.44 3.44 0 0 0-.216.438V13h-1.482V6.844h.87c.152 0 .258.028.318.084.06.052.1.148.12.288l.09.696Zm6.87 1.302c0-.192-.029-.372-.085-.54a1.25 1.25 0 0 0-.24-.45 1.096 1.096 0 0 0-.414-.3 1.358 1.358 0 0 0-.576-.114c-.428 0-.766.122-1.014.366-.244.244-.4.59-.468 1.038h2.796Zm-2.827.894c.024.316.08.59.168.822.088.228.204.418.348.57.144.148.314.26.51.336.2.072.42.108.66.108.24 0 .446-.028.618-.084a2.76 2.76 0 0 0 .456-.186 7.55 7.55 0 0 0 .342-.186.59.59 0 0 1 .288-.084c.124 0 .216.046.276.138l.426.54a2.536 2.536 0 0 1-.552.486 3.281 3.281 0 0 1-1.32.474 4.79 4.79 0 0 1-.666.048 3.33 3.33 0 0 1-1.194-.21 2.726 2.726 0 0 1-.96-.63 2.993 2.993 0 0 1-.642-1.032c-.156-.412-.234-.888-.234-1.428 0-.42.068-.814.204-1.182.136-.372.33-.694.582-.966.256-.276.566-.494.93-.654.368-.16.782-.24 1.242-.24.388 0 .746.062 1.074.186.328.124.61.306.846.546.236.236.42.528.552.876.136.344.204.738.204 1.182 0 .224-.024.376-.072.456-.048.076-.14.114-.276.114h-3.81Zm9.134-1.692a1.451 1.451 0 0 0-.552-.432 1.597 1.597 0 0 0-.636-.126c-.224 0-.426.042-.606.126a1.21 1.21 0 0 0-.462.384 1.8 1.8 0 0 0-.294.648c-.068.26-.102.568-.102.924 0 .36.028.666.084.918.06.248.144.452.252.612.108.156.24.27.396.342.156.068.33.102.522.102.308 0 .57-.064.786-.192.216-.128.42-.31.612-.546v-2.76Zm1.482-4.332V13h-.906c-.196 0-.32-.09-.372-.27l-.126-.594a3.09 3.09 0 0 1-.858.69c-.32.176-.694.264-1.122.264-.336 0-.644-.07-.924-.21a2.098 2.098 0 0 1-.726-.606 3.033 3.033 0 0 1-.468-.99 5.072 5.072 0 0 1-.162-1.344c0-.456.062-.88.186-1.272s.302-.732.534-1.02c.232-.288.51-.512.834-.672a2.384 2.384 0 0 1 1.092-.246c.344 0 .638.054.882.162.244.108.462.254.654.438V4.084h1.482Zm5.863 7.32c.168.204.35.348.546.432.2.084.41.126.63.126.228 0 .432-.04.612-.12.184-.084.34-.212.468-.384a1.93 1.93 0 0 0 .294-.666 4.05 4.05 0 0 0 .102-.972c0-.676-.112-1.164-.336-1.464-.224-.304-.546-.456-.966-.456-.284 0-.532.066-.744.198a2.38 2.38 0 0 0-.606.546v2.76Zm0-3.804a3.02 3.02 0 0 1 .822-.618c.304-.156.65-.234 1.038-.234.356 0 .676.07.96.21.288.14.532.342.732.606.204.26.36.576.468.948.108.372.162.79.162 1.254 0 .5-.062.954-.186 1.362a3.132 3.132 0 0 1-.534 1.05 2.4 2.4 0 0 1-.828.672c-.324.16-.684.24-1.08.24a2.103 2.103 0 0 1-.954-.216 1.891 1.891 0 0 1-.366-.246c-.108-.1-.212-.21-.312-.33l-.066.414c-.024.104-.066.178-.126.222a.37.37 0 0 1-.234.066h-.978V4.084h1.482V7.6Zm10.743-.756-3.354 7.848a.538.538 0 0 1-.174.234c-.068.056-.174.084-.318.084H97.68l1.152-2.472-2.49-5.694h1.302c.116 0 .206.028.27.084.068.056.118.12.15.192l1.308 3.192c.044.108.08.216.108.324.032.108.062.218.09.33a32.3 32.3 0 0 1 .108-.33c.036-.112.076-.222.12-.33l1.236-3.186a.437.437 0 0 1 .408-.276h1.188Z"/></g></svg>';
|
|
462
|
+
|
|
405
463
|
|
|
406
|
-
const $
|
|
464
|
+
const $3575c8a563f2a1da$var$getWatermarkedCanvas = (canvas)=>new Promise((resolve)=>{
|
|
465
|
+
const dpr = window.devicePixelRatio || 1;
|
|
466
|
+
const context = canvas.getContext("2d");
|
|
467
|
+
const svgBlob = new Blob([
|
|
468
|
+
(0, $67e3b71ab2fb8185$export$218be676a714a9df)
|
|
469
|
+
], {
|
|
470
|
+
type: "image/svg+xml;charset=utf-8"
|
|
471
|
+
});
|
|
472
|
+
const blobUrl = URL.createObjectURL(svgBlob);
|
|
473
|
+
const watermarkImage = new Image();
|
|
474
|
+
watermarkImage.onload = ()=>{
|
|
475
|
+
const x = canvas.width / dpr - watermarkImage.width - 16;
|
|
476
|
+
const y = canvas.height / dpr - watermarkImage.height - 16;
|
|
477
|
+
context?.drawImage(watermarkImage, x, y);
|
|
478
|
+
resolve(canvas);
|
|
479
|
+
};
|
|
480
|
+
watermarkImage.src = blobUrl;
|
|
481
|
+
});
|
|
482
|
+
const $3575c8a563f2a1da$export$674c90a250a8b2c5 = async (video)=>{
|
|
483
|
+
const { videoWidth: videoWidth , videoHeight: videoHeight } = video;
|
|
484
|
+
const orientation = videoWidth > videoHeight ? "landscape" : "portrait";
|
|
485
|
+
const sourceWidth = orientation === "portrait" ? videoWidth : videoHeight;
|
|
486
|
+
const sourceHeight = orientation === "landscape" ? videoHeight : videoWidth;
|
|
487
|
+
const sourceX = orientation === "landscape" ? (videoWidth - sourceWidth) / 2 : 0;
|
|
488
|
+
const sourceY = orientation === "portrait" ? (videoHeight - sourceHeight) / 2 : 0;
|
|
407
489
|
const canvas = document.createElement("canvas");
|
|
408
490
|
const ctx = canvas.getContext("2d");
|
|
409
|
-
|
|
410
|
-
|
|
411
|
-
|
|
412
|
-
|
|
413
|
-
|
|
414
|
-
const
|
|
415
|
-
|
|
416
|
-
if (width > height) {
|
|
417
|
-
offsetWidth += height - offsetHeight;
|
|
418
|
-
offsetHeight = height;
|
|
419
|
-
let cropW = width - offsetWidth;
|
|
420
|
-
if (cropW < 0) {
|
|
421
|
-
cropW = 0;
|
|
422
|
-
offsetWidth = width;
|
|
423
|
-
}
|
|
424
|
-
canvas.width = offsetWidth;
|
|
425
|
-
canvas.height = Math.min(offsetHeight, height);
|
|
426
|
-
ctx?.drawImage(video, cropW / 2, 0, canvas.width, canvas.height, 0, 0, canvas.width, canvas.height);
|
|
427
|
-
} else {
|
|
428
|
-
offsetHeight += width - offsetWidth;
|
|
429
|
-
offsetWidth = width;
|
|
430
|
-
let cropH = height - offsetHeight;
|
|
431
|
-
if (cropH < 0) {
|
|
432
|
-
cropH = 0;
|
|
433
|
-
offsetHeight = height;
|
|
434
|
-
}
|
|
435
|
-
canvas.width = Math.min(offsetWidth, width);
|
|
436
|
-
canvas.height = offsetHeight;
|
|
437
|
-
ctx?.drawImage(video, 0, cropH / 2, canvas.width, canvas.height, 0, 0, canvas.width, canvas.height);
|
|
438
|
-
}
|
|
439
|
-
return canvas.toDataURL("image/jpeg");
|
|
491
|
+
const dpr = window.devicePixelRatio || 1;
|
|
492
|
+
canvas.width = sourceWidth * dpr;
|
|
493
|
+
canvas.height = sourceHeight * dpr;
|
|
494
|
+
ctx?.scale(dpr, dpr);
|
|
495
|
+
ctx?.drawImage(video, sourceX, sourceY, sourceWidth, sourceHeight, 0, 0, canvas.width / dpr, canvas.height / dpr);
|
|
496
|
+
const watermarkedCanvas = await $3575c8a563f2a1da$var$getWatermarkedCanvas(canvas);
|
|
497
|
+
return watermarkedCanvas.toDataURL("image/jpeg");
|
|
440
498
|
};
|
|
441
|
-
const $
|
|
499
|
+
const $3575c8a563f2a1da$export$4a210166cc9cb64b = async (src)=>{
|
|
442
500
|
const video = document.createElement("video");
|
|
443
501
|
const stream = new MediaStream();
|
|
444
502
|
stream.addTrack(src);
|
|
@@ -453,7 +511,8 @@ const $75b45b359b4a28a4$export$4a210166cc9cb64b = async (src)=>{
|
|
|
453
511
|
canvas.height = video.height;
|
|
454
512
|
canvas.width = video.width;
|
|
455
513
|
ctx?.drawImage(video, 0, 0);
|
|
456
|
-
|
|
514
|
+
const watermarkedCanvas = await $3575c8a563f2a1da$var$getWatermarkedCanvas(canvas);
|
|
515
|
+
return watermarkedCanvas.toDataURL("image/jpeg");
|
|
457
516
|
};
|
|
458
517
|
|
|
459
518
|
|
|
@@ -465,7 +524,7 @@ const $1dedebd5ff3002eb$export$818d60b2e626da0c = {
|
|
|
465
524
|
CONSUME_ERROR: "CONS1",
|
|
466
525
|
SOCKET_LOST: "SOCK1"
|
|
467
526
|
};
|
|
468
|
-
const $1dedebd5ff3002eb$
|
|
527
|
+
const $1dedebd5ff3002eb$export$d21ffcc5eb136bfa = {
|
|
469
528
|
qvga: {
|
|
470
529
|
width: {
|
|
471
530
|
ideal: 320
|
|
@@ -528,11 +587,13 @@ const $1dedebd5ff3002eb$var$fetchAgentInfo = async ({ apiKey: apiKey , email: em
|
|
|
528
587
|
});
|
|
529
588
|
return agent;
|
|
530
589
|
};
|
|
531
|
-
|
|
590
|
+
const $1dedebd5ff3002eb$var$StreamerEventTargetType = EventTarget;
|
|
591
|
+
class $1dedebd5ff3002eb$export$2e2bcd8739ae039 extends $1dedebd5ff3002eb$var$StreamerEventTargetType {
|
|
532
592
|
pendingDeviceRequest = {};
|
|
533
593
|
joinOptions = {};
|
|
534
594
|
devicesList = [];
|
|
535
595
|
constructor(){
|
|
596
|
+
super();
|
|
536
597
|
navigator.mediaDevices.addEventListener("devicechange", ()=>this.onDeviceChange());
|
|
537
598
|
this.iceServers = [
|
|
538
599
|
{
|
|
@@ -561,18 +622,59 @@ class $1dedebd5ff3002eb$export$2e2bcd8739ae039 {
|
|
|
561
622
|
this.webcamProducer = null;
|
|
562
623
|
this.screenshareProducer = null;
|
|
563
624
|
this.customMessages = new Map();
|
|
625
|
+
this.audioRenderers = {};
|
|
626
|
+
}
|
|
627
|
+
getState() {
|
|
628
|
+
const peers = [];
|
|
629
|
+
this.peers.forEach((peer, key)=>{
|
|
630
|
+
const deviceState = {
|
|
631
|
+
microphone: {
|
|
632
|
+
enabled: false,
|
|
633
|
+
muted: false
|
|
634
|
+
},
|
|
635
|
+
camera: {
|
|
636
|
+
enabled: false
|
|
637
|
+
},
|
|
638
|
+
screenshare: {
|
|
639
|
+
enabled: false
|
|
640
|
+
}
|
|
641
|
+
};
|
|
642
|
+
peer.producersData.forEach((producer)=>{
|
|
643
|
+
if (producer.deviceType === "microphone") {
|
|
644
|
+
deviceState.microphone.enabled = true;
|
|
645
|
+
deviceState.microphone.muted = producer.paused;
|
|
646
|
+
} else if (producer.deviceType === "screen") deviceState.screenshare.enabled = true;
|
|
647
|
+
else if (producer.deviceType === "webcam") deviceState.camera.enabled = true;
|
|
648
|
+
});
|
|
649
|
+
peers.push({
|
|
650
|
+
peerId: key,
|
|
651
|
+
displayName: peer.displayName,
|
|
652
|
+
deviceState: deviceState
|
|
653
|
+
});
|
|
654
|
+
});
|
|
655
|
+
return {
|
|
656
|
+
roomId: this.roomId,
|
|
657
|
+
peerId: this.peerId,
|
|
658
|
+
displayName: this.displayName,
|
|
659
|
+
callId: undefined,
|
|
660
|
+
deviceState: this.getDevicesState(),
|
|
661
|
+
peers: peers
|
|
662
|
+
};
|
|
564
663
|
}
|
|
565
664
|
onStartSpeak() {
|
|
566
665
|
if (this.micProducer && !this.micProducer.paused) {
|
|
567
|
-
const event = new CustomEvent("localStartSpeak"
|
|
568
|
-
|
|
666
|
+
const event = new CustomEvent("localStartSpeak", {
|
|
667
|
+
cancelable: true,
|
|
668
|
+
bubbles: true
|
|
669
|
+
});
|
|
670
|
+
this.dispatchEvent(event);
|
|
569
671
|
this.protoo.notify("startSpeak");
|
|
570
672
|
}
|
|
571
673
|
}
|
|
572
674
|
onStopSpeak() {
|
|
573
675
|
if (this.micProducer && !this.micProducer.paused) {
|
|
574
676
|
const event = new CustomEvent("localStopSpeak");
|
|
575
|
-
|
|
677
|
+
this.dispatchEvent(event);
|
|
576
678
|
this.protoo.notify("stopSpeak");
|
|
577
679
|
}
|
|
578
680
|
}
|
|
@@ -582,7 +684,7 @@ class $1dedebd5ff3002eb$export$2e2bcd8739ae039 {
|
|
|
582
684
|
code: code
|
|
583
685
|
}
|
|
584
686
|
});
|
|
585
|
-
|
|
687
|
+
this.dispatchEvent(event);
|
|
586
688
|
}
|
|
587
689
|
async generateToken(bid) {
|
|
588
690
|
const url = "https://g.snapcall.io/stream";
|
|
@@ -616,7 +718,7 @@ class $1dedebd5ff3002eb$export$2e2bcd8739ae039 {
|
|
|
616
718
|
url = `${"wss://g.snapcall.io/stream"}/${instanceId}/?roomId=${room}&peerId=${this.peerId}`;
|
|
617
719
|
} catch (roomError) {
|
|
618
720
|
const event = new CustomEvent("invalidRoom");
|
|
619
|
-
|
|
721
|
+
this.dispatchEvent(event);
|
|
620
722
|
}
|
|
621
723
|
if (!url) throw new Error("Invalid socket URL");
|
|
622
724
|
this.protooTransport = new $jQDcL$protooclient.WebSocketTransport(url, {
|
|
@@ -644,16 +746,17 @@ class $1dedebd5ff3002eb$export$2e2bcd8739ae039 {
|
|
|
644
746
|
const { id: id , displayName: displayName } = notification.data;
|
|
645
747
|
this.peers.set(id, {
|
|
646
748
|
id: id,
|
|
749
|
+
peerId: id,
|
|
647
750
|
displayName: displayName,
|
|
648
751
|
producersData: []
|
|
649
752
|
});
|
|
650
753
|
const event = new CustomEvent("newPeer", {
|
|
651
754
|
detail: {
|
|
652
|
-
|
|
755
|
+
peerId: id,
|
|
653
756
|
displayName: displayName
|
|
654
757
|
}
|
|
655
758
|
});
|
|
656
|
-
|
|
759
|
+
this.dispatchEvent(event);
|
|
657
760
|
} else if (notification.method === "newProducer") {
|
|
658
761
|
const { peerId: peerId , producerId: producerId , deviceType: deviceType , paused: paused } = notification.data;
|
|
659
762
|
await this.consumeProducer({
|
|
@@ -664,6 +767,7 @@ class $1dedebd5ff3002eb$export$2e2bcd8739ae039 {
|
|
|
664
767
|
});
|
|
665
768
|
} else if (notification.method === "peerClosed") {
|
|
666
769
|
const { peerId: peerId , relatedConsumers: relatedConsumers } = notification.data;
|
|
770
|
+
this.peers.delete(peerId);
|
|
667
771
|
relatedConsumers.forEach((consumer)=>{
|
|
668
772
|
this.onConsumerClose({
|
|
669
773
|
consumerId: consumer.id
|
|
@@ -674,7 +778,7 @@ class $1dedebd5ff3002eb$export$2e2bcd8739ae039 {
|
|
|
674
778
|
peerId: peerId
|
|
675
779
|
}
|
|
676
780
|
});
|
|
677
|
-
|
|
781
|
+
this.dispatchEvent(event);
|
|
678
782
|
} else if (notification.method === "consumerClosed") {
|
|
679
783
|
const { consumerId: consumerId } = notification.data;
|
|
680
784
|
this.onConsumerClose({
|
|
@@ -688,34 +792,36 @@ class $1dedebd5ff3002eb$export$2e2bcd8739ae039 {
|
|
|
688
792
|
displayName: displayName
|
|
689
793
|
}
|
|
690
794
|
});
|
|
691
|
-
|
|
795
|
+
this.dispatchEvent(event);
|
|
692
796
|
} else if (notification.method === "requestDevice") {
|
|
693
797
|
this.pendingDeviceRequest[notification.data.requestId] = notification.data;
|
|
694
798
|
const event = new CustomEvent("requestDevice", {
|
|
695
799
|
detail: notification.data
|
|
696
800
|
});
|
|
697
|
-
|
|
801
|
+
this.dispatchEvent(event);
|
|
698
802
|
} else if (notification.method === "startSpeak") ;
|
|
699
803
|
else if (notification.method === "stopSpeak") ;
|
|
700
804
|
else if (notification.method === "producerPaused" || notification.method === "producerResumed") {
|
|
805
|
+
if (notification.data?.deviceType === "microphone") {
|
|
806
|
+
const { peerId: peerId , producerId: producerId } = notification.data;
|
|
807
|
+
const microphoneData = this.peers.get(peerId)?.producersData.find((ele)=>producerId === ele.producerId);
|
|
808
|
+
if (microphoneData) microphoneData.paused = notification.method === "producerPaused" ? true : false;
|
|
809
|
+
}
|
|
701
810
|
const event = new CustomEvent(notification.method, {
|
|
702
811
|
detail: notification.data
|
|
703
812
|
});
|
|
704
|
-
|
|
813
|
+
this.dispatchEvent(event);
|
|
705
814
|
} else if (notification.method === "requestDeviceResult") {
|
|
706
815
|
const event = new CustomEvent(notification.method, {
|
|
707
816
|
detail: notification.data
|
|
708
817
|
});
|
|
709
|
-
|
|
818
|
+
this.dispatchEvent(event);
|
|
710
819
|
} else if (notification.method === "terminateRoom") {
|
|
711
|
-
this.
|
|
712
|
-
this.closeWebrtcTransport(this.recvAudioTransports);
|
|
713
|
-
this.closeWebrtcTransport(this.sendVideoTransports);
|
|
714
|
-
this.closeWebrtcTransport(this.recvVideoTransports);
|
|
820
|
+
this.release();
|
|
715
821
|
const event = new CustomEvent(notification.method, {
|
|
716
822
|
detail: notification.data
|
|
717
823
|
});
|
|
718
|
-
|
|
824
|
+
this.dispatchEvent(event);
|
|
719
825
|
} else if (notification.method === "customMessage") {
|
|
720
826
|
const { messageId: messageId , chunk: chunk1 , chunkIndex: chunkIndex , totalChunks: totalChunks } = notification.data.event;
|
|
721
827
|
const existingMessage = this.customMessages.get(messageId);
|
|
@@ -743,7 +849,7 @@ class $1dedebd5ff3002eb$export$2e2bcd8739ae039 {
|
|
|
743
849
|
event: parsedEvent
|
|
744
850
|
}
|
|
745
851
|
});
|
|
746
|
-
|
|
852
|
+
this.dispatchEvent(event);
|
|
747
853
|
this.customMessages.delete(messageId);
|
|
748
854
|
}
|
|
749
855
|
}
|
|
@@ -767,7 +873,7 @@ class $1dedebd5ff3002eb$export$2e2bcd8739ae039 {
|
|
|
767
873
|
} catch (error) {
|
|
768
874
|
console.error(error);
|
|
769
875
|
$jQDcL$sentrybrowser.captureException(error);
|
|
770
|
-
|
|
876
|
+
this.dispatchEvent(new CustomEvent("browserDetectionFailed"));
|
|
771
877
|
}
|
|
772
878
|
return new $jQDcL$mediasoupclient.Device({
|
|
773
879
|
handlerName: "Chrome74"
|
|
@@ -907,7 +1013,7 @@ class $1dedebd5ff3002eb$export$2e2bcd8739ae039 {
|
|
|
907
1013
|
apiKey: this.joinOptions.apiKey,
|
|
908
1014
|
email: this.joinOptions.email
|
|
909
1015
|
});
|
|
910
|
-
if (agentInfo)
|
|
1016
|
+
if (agentInfo) this.dispatchEvent(new CustomEvent("agentIdentity", {
|
|
911
1017
|
detail: {
|
|
912
1018
|
success: true,
|
|
913
1019
|
email: this.joinOptions.email
|
|
@@ -915,7 +1021,7 @@ class $1dedebd5ff3002eb$export$2e2bcd8739ae039 {
|
|
|
915
1021
|
}));
|
|
916
1022
|
} catch (agentInfoError) {
|
|
917
1023
|
console.warn(agentInfoError);
|
|
918
|
-
|
|
1024
|
+
this.dispatchEvent(new CustomEvent("agentIdentity", {
|
|
919
1025
|
detail: {
|
|
920
1026
|
success: false
|
|
921
1027
|
}
|
|
@@ -926,16 +1032,22 @@ class $1dedebd5ff3002eb$export$2e2bcd8739ae039 {
|
|
|
926
1032
|
email: this.joinOptions.email
|
|
927
1033
|
});
|
|
928
1034
|
this.peers = new Map(peers.map((peer)=>[
|
|
929
|
-
peer.id,
|
|
1035
|
+
peer.id || peer.peerId,
|
|
930
1036
|
{
|
|
931
|
-
...peer
|
|
932
|
-
|
|
1037
|
+
...peer,
|
|
1038
|
+
peerId: peer.id || peer.peerId
|
|
1039
|
+
},
|
|
933
1040
|
]));
|
|
934
1041
|
const callId = await this.getCallId();
|
|
935
|
-
|
|
1042
|
+
this.dispatchEvent(new CustomEvent("enterRoom", {
|
|
936
1043
|
detail: {
|
|
937
1044
|
peerId: this.peerId,
|
|
938
|
-
peers: peers
|
|
1045
|
+
peers: peers.map((peer)=>{
|
|
1046
|
+
return {
|
|
1047
|
+
...peer,
|
|
1048
|
+
peerId: peer.id || peer.peerId
|
|
1049
|
+
};
|
|
1050
|
+
}),
|
|
939
1051
|
callId: callId
|
|
940
1052
|
}
|
|
941
1053
|
}));
|
|
@@ -944,7 +1056,7 @@ class $1dedebd5ff3002eb$export$2e2bcd8739ae039 {
|
|
|
944
1056
|
// Consume Peers
|
|
945
1057
|
peers.forEach((peer)=>{
|
|
946
1058
|
this.consumePeer({
|
|
947
|
-
peerId: peer.id,
|
|
1059
|
+
peerId: peer.id || peer.peerId,
|
|
948
1060
|
producersData: peer.producersData
|
|
949
1061
|
});
|
|
950
1062
|
});
|
|
@@ -982,13 +1094,15 @@ class $1dedebd5ff3002eb$export$2e2bcd8739ae039 {
|
|
|
982
1094
|
this.micProducer?.close();
|
|
983
1095
|
this.micProducer = undefined;
|
|
984
1096
|
const event = new CustomEvent("microphoneMute");
|
|
985
|
-
|
|
1097
|
+
this.dispatchEvent(event);
|
|
986
1098
|
await this.protoo.request("closeProducer", {
|
|
987
1099
|
producerId: producerId
|
|
988
1100
|
});
|
|
989
1101
|
}
|
|
990
1102
|
async onDeviceChange() {
|
|
991
1103
|
console.log("detecting device change");
|
|
1104
|
+
const deviceListChangeEvent = new CustomEvent("devicesListChange");
|
|
1105
|
+
this.dispatchEvent(deviceListChangeEvent);
|
|
992
1106
|
if (!this.protoo.closed && this.micProducer) {
|
|
993
1107
|
const lists = await navigator.mediaDevices.enumerateDevices();
|
|
994
1108
|
const inputs = lists.filter((media)=>media.kind === "audioinput");
|
|
@@ -1018,7 +1132,7 @@ class $1dedebd5ff3002eb$export$2e2bcd8739ae039 {
|
|
|
1018
1132
|
detail: defaultDevice
|
|
1019
1133
|
});
|
|
1020
1134
|
this.audioInputDefaultDevice = defaultDevice;
|
|
1021
|
-
|
|
1135
|
+
this.dispatchEvent(event);
|
|
1022
1136
|
console.log("new default audio input trying to switch new :", defaultDevice.deviceId, defaultDevice.label);
|
|
1023
1137
|
}
|
|
1024
1138
|
this.switchMicrophone("default");
|
|
@@ -1062,7 +1176,7 @@ class $1dedebd5ff3002eb$export$2e2bcd8739ae039 {
|
|
|
1062
1176
|
this.micProducer = micProducer;
|
|
1063
1177
|
this.muted = false;
|
|
1064
1178
|
const event = new CustomEvent("microphoneEnabled");
|
|
1065
|
-
|
|
1179
|
+
this.dispatchEvent(event);
|
|
1066
1180
|
}
|
|
1067
1181
|
}
|
|
1068
1182
|
async muteMicrophone() {
|
|
@@ -1074,7 +1188,7 @@ class $1dedebd5ff3002eb$export$2e2bcd8739ae039 {
|
|
|
1074
1188
|
});
|
|
1075
1189
|
this.muted = true;
|
|
1076
1190
|
const event = new CustomEvent("microphoneMute");
|
|
1077
|
-
|
|
1191
|
+
this.dispatchEvent(event);
|
|
1078
1192
|
}
|
|
1079
1193
|
}
|
|
1080
1194
|
async unMuteMicrophone() {
|
|
@@ -1086,7 +1200,7 @@ class $1dedebd5ff3002eb$export$2e2bcd8739ae039 {
|
|
|
1086
1200
|
});
|
|
1087
1201
|
this.muted = false;
|
|
1088
1202
|
const event = new CustomEvent("microphoneUnmute");
|
|
1089
|
-
|
|
1203
|
+
this.dispatchEvent(event);
|
|
1090
1204
|
}
|
|
1091
1205
|
}
|
|
1092
1206
|
async toggleMute() {
|
|
@@ -1102,17 +1216,31 @@ class $1dedebd5ff3002eb$export$2e2bcd8739ae039 {
|
|
|
1102
1216
|
};
|
|
1103
1217
|
}
|
|
1104
1218
|
}
|
|
1105
|
-
|
|
1106
|
-
|
|
1107
|
-
this.protooTransport.close();
|
|
1219
|
+
release() {
|
|
1220
|
+
console.log("release");
|
|
1108
1221
|
this.closeWebrtcTransport(this.sendAudioTransports);
|
|
1109
1222
|
this.closeWebrtcTransport(this.recvAudioTransports);
|
|
1110
1223
|
this.closeWebrtcTransport(this.sendVideoTransports);
|
|
1111
1224
|
this.closeWebrtcTransport(this.recvVideoTransports);
|
|
1225
|
+
this.webcamTrack?.stop();
|
|
1226
|
+
this.webcamTrack = null;
|
|
1227
|
+
this.protooTransport.close();
|
|
1228
|
+
this.protoo.close();
|
|
1229
|
+
this.micProducer?.close();
|
|
1230
|
+
this.screenshareProducer?.close();
|
|
1231
|
+
this.webcamProducer?.close();
|
|
1232
|
+
this.consumers.forEach((consumer)=>{
|
|
1233
|
+
consumer.mediaSoupConsumer.close();
|
|
1234
|
+
});
|
|
1112
1235
|
this.consumers.clear();
|
|
1113
1236
|
this.audioLevel?.release();
|
|
1114
|
-
|
|
1115
|
-
|
|
1237
|
+
}
|
|
1238
|
+
endCall() {
|
|
1239
|
+
this.release();
|
|
1240
|
+
const event = new CustomEvent("leaveRoom");
|
|
1241
|
+
this.dispatchEvent(event);
|
|
1242
|
+
const deprecatedEvent = new CustomEvent("snapcallEvent_callEnd");
|
|
1243
|
+
this.dispatchEvent(deprecatedEvent);
|
|
1116
1244
|
}
|
|
1117
1245
|
terminateRoom() {
|
|
1118
1246
|
this.protoo.request("terminateRoom");
|
|
@@ -1131,7 +1259,7 @@ class $1dedebd5ff3002eb$export$2e2bcd8739ae039 {
|
|
|
1131
1259
|
numberOfAvailableWebcams: this.webcams.size
|
|
1132
1260
|
}
|
|
1133
1261
|
});
|
|
1134
|
-
|
|
1262
|
+
this.dispatchEvent(event);
|
|
1135
1263
|
}
|
|
1136
1264
|
isVideoZoomAvailable() {
|
|
1137
1265
|
return this.webcamZoom.available;
|
|
@@ -1183,16 +1311,85 @@ class $1dedebd5ff3002eb$export$2e2bcd8739ae039 {
|
|
|
1183
1311
|
});
|
|
1184
1312
|
}
|
|
1185
1313
|
}
|
|
1186
|
-
|
|
1314
|
+
scaleVideo() {
|
|
1315
|
+
try {
|
|
1316
|
+
let videoCount = 0;
|
|
1317
|
+
this.consumers.forEach((consumer)=>{
|
|
1318
|
+
if (consumer.mediaSoupConsumer.kind === "video") videoCount++;
|
|
1319
|
+
});
|
|
1320
|
+
if (this.screenshareProducer && !this.screenshareProducer.closed) videoCount++;
|
|
1321
|
+
let scale = {
|
|
1322
|
+
scaleResolutionDownBy: 1
|
|
1323
|
+
};
|
|
1324
|
+
if (videoCount >= 3) scale = {
|
|
1325
|
+
scaleResolutionDownBy: 2
|
|
1326
|
+
};
|
|
1327
|
+
if (videoCount >= 9) scale = {
|
|
1328
|
+
scaleResolutionDownBy: 4
|
|
1329
|
+
};
|
|
1330
|
+
if (this.webcamProducer && !this.webcamProducer.closed) {
|
|
1331
|
+
console.log(`scaling video by ${scale.scaleResolutionDownBy}`);
|
|
1332
|
+
this.webcamProducer?.setRtpEncodingParameters?.(scale).catch((err)=>{
|
|
1333
|
+
console.error("scaleResolutionDownBy not supported", err);
|
|
1334
|
+
});
|
|
1335
|
+
}
|
|
1336
|
+
} catch (error) {
|
|
1337
|
+
console.error("scaleVideo error", error);
|
|
1338
|
+
}
|
|
1339
|
+
}
|
|
1340
|
+
async switchWebcam({ device: device , resolution: resolution , rotate: rotate }) {
|
|
1341
|
+
if (!this.webcam.device) throw new Error("no webcam devices");
|
|
1342
|
+
if (rotate) {
|
|
1343
|
+
const webcams = Array.from(this.webcams.keys());
|
|
1344
|
+
const deviceId = this.webcam?.device?.deviceId || "unknow";
|
|
1345
|
+
let newWebcamIndex = webcams.indexOf(deviceId);
|
|
1346
|
+
if (newWebcamIndex < webcams.length - 1) newWebcamIndex++;
|
|
1347
|
+
else newWebcamIndex = 0;
|
|
1348
|
+
const newWebcamDevice = this.webcams.get(webcams[newWebcamIndex]);
|
|
1349
|
+
if (!newWebcamDevice) throw new Error("no webcam device");
|
|
1350
|
+
this.webcam.device = newWebcamDevice;
|
|
1351
|
+
this.webcam.resolution = "hd";
|
|
1352
|
+
} else {
|
|
1353
|
+
if (device) this.webcam.device = device;
|
|
1354
|
+
if (resolution) this.webcam.resolution = resolution;
|
|
1355
|
+
}
|
|
1356
|
+
const stream = await this.handleGetUserMediaError("webcam", navigator.mediaDevices.getUserMedia({
|
|
1357
|
+
video: {
|
|
1358
|
+
deviceId: {
|
|
1359
|
+
ideal: this.webcam.device.deviceId
|
|
1360
|
+
},
|
|
1361
|
+
...$1dedebd5ff3002eb$export$d21ffcc5eb136bfa[resolution || this.webcam.resolution]
|
|
1362
|
+
}
|
|
1363
|
+
}));
|
|
1364
|
+
if (!this.sendVideoTransports) throw new Error("video transport not found");
|
|
1365
|
+
const track = stream.getVideoTracks()[0];
|
|
1366
|
+
this.webcamTrack = track;
|
|
1367
|
+
await this.webcamProducer?.replaceTrack?.({
|
|
1368
|
+
track: track
|
|
1369
|
+
});
|
|
1370
|
+
const capabilities = await track.getCapabilities?.() || navigator.mediaDevices.getSupportedConstraints?.();
|
|
1371
|
+
this.webcamZoom = {
|
|
1372
|
+
available: Boolean(capabilities?.zoom),
|
|
1373
|
+
min: capabilities?.zoom?.min || 0,
|
|
1374
|
+
max: capabilities?.zoom?.max || 0
|
|
1375
|
+
};
|
|
1376
|
+
const event = new CustomEvent("localVideoChange", {
|
|
1377
|
+
detail: {
|
|
1378
|
+
camera: this.getCurrentWebcam()
|
|
1379
|
+
}
|
|
1380
|
+
});
|
|
1381
|
+
this.dispatchEvent(event);
|
|
1382
|
+
}
|
|
1383
|
+
async enableVideo(config) {
|
|
1187
1384
|
await this.updateWebcams();
|
|
1188
|
-
|
|
1385
|
+
if (config?.device) this.webcam.device = config.device;
|
|
1189
1386
|
if (!this.webcam.device) throw new Error("no webcam devices");
|
|
1190
1387
|
const stream = await this.handleGetUserMediaError("webcam", navigator.mediaDevices.getUserMedia({
|
|
1191
1388
|
video: {
|
|
1192
1389
|
deviceId: {
|
|
1193
1390
|
ideal: this.webcam.device.deviceId
|
|
1194
1391
|
},
|
|
1195
|
-
...$1dedebd5ff3002eb$
|
|
1392
|
+
...$1dedebd5ff3002eb$export$d21ffcc5eb136bfa[config?.resolution || this.webcam.resolution]
|
|
1196
1393
|
}
|
|
1197
1394
|
}));
|
|
1198
1395
|
if (!this.sendVideoTransports) throw new Error("video transport not found");
|
|
@@ -1204,7 +1401,7 @@ class $1dedebd5ff3002eb$export$2e2bcd8739ae039 {
|
|
|
1204
1401
|
min: capabilities?.zoom?.min || 0,
|
|
1205
1402
|
max: capabilities?.zoom?.max || 0
|
|
1206
1403
|
};
|
|
1207
|
-
const encodings = undefined
|
|
1404
|
+
const encodings = undefined;
|
|
1208
1405
|
const codecOptions = {
|
|
1209
1406
|
videoGoogleStartBitrate: 1000
|
|
1210
1407
|
};
|
|
@@ -1218,48 +1415,24 @@ class $1dedebd5ff3002eb$export$2e2bcd8739ae039 {
|
|
|
1218
1415
|
deviceType: deviceType
|
|
1219
1416
|
}
|
|
1220
1417
|
});
|
|
1418
|
+
this.scaleVideo();
|
|
1221
1419
|
this.webcamProducer.on("transportclose", ()=>{
|
|
1222
1420
|
this.webcamProducer = null;
|
|
1223
1421
|
});
|
|
1224
1422
|
this.webcamProducer.on("trackended", ()=>{
|
|
1225
1423
|
this.disableVideo().catch(()=>{});
|
|
1226
1424
|
});
|
|
1227
|
-
const event = new CustomEvent("localVideoAvailable"
|
|
1228
|
-
|
|
1229
|
-
|
|
1230
|
-
async rotateVideo() {
|
|
1231
|
-
await this.updateWebcams();
|
|
1232
|
-
const webcams = Array.from(this.webcams.keys());
|
|
1233
|
-
const deviceId = this.webcam?.device?.deviceId || "unknow";
|
|
1234
|
-
let newWebcamIndex = webcams.indexOf(deviceId);
|
|
1235
|
-
if (newWebcamIndex < webcams.length - 1) newWebcamIndex++;
|
|
1236
|
-
else newWebcamIndex = 0;
|
|
1237
|
-
const newWebcamDevice = this.webcams.get(webcams[newWebcamIndex]);
|
|
1238
|
-
if (!newWebcamDevice) throw new Error("no webcam device");
|
|
1239
|
-
this.webcam.device = newWebcamDevice;
|
|
1240
|
-
this.webcam.resolution = "hd";
|
|
1241
|
-
this.webcamProducer?.track?.stop?.();
|
|
1242
|
-
const stream = await navigator.mediaDevices.getUserMedia({
|
|
1243
|
-
video: {
|
|
1244
|
-
deviceId: {
|
|
1245
|
-
exact: this.webcam.device.deviceId
|
|
1246
|
-
},
|
|
1247
|
-
...$1dedebd5ff3002eb$var$VIDEO_CONSTRAINS[this.webcam.resolution]
|
|
1425
|
+
const event = new CustomEvent("localVideoAvailable", {
|
|
1426
|
+
detail: {
|
|
1427
|
+
camera: this.getCurrentWebcam()
|
|
1248
1428
|
}
|
|
1249
1429
|
});
|
|
1250
|
-
|
|
1251
|
-
|
|
1252
|
-
|
|
1253
|
-
|
|
1430
|
+
this.dispatchEvent(event);
|
|
1431
|
+
}
|
|
1432
|
+
async rotateVideo() {
|
|
1433
|
+
await this.switchWebcam({
|
|
1434
|
+
rotate: true
|
|
1254
1435
|
});
|
|
1255
|
-
const capabilities = await track.getCapabilities();
|
|
1256
|
-
this.webcamZoom = {
|
|
1257
|
-
available: Boolean(capabilities.zoom),
|
|
1258
|
-
min: capabilities?.zoom?.min || 0,
|
|
1259
|
-
max: capabilities?.zoom?.max || 0
|
|
1260
|
-
};
|
|
1261
|
-
const event = new CustomEvent("localVideoRotate");
|
|
1262
|
-
window.dispatchEvent(event);
|
|
1263
1436
|
}
|
|
1264
1437
|
async zoomVideo() {
|
|
1265
1438
|
if (!this.webcamZoom.available) throw new Error("Webcam zoom is not available");
|
|
@@ -1291,7 +1464,7 @@ class $1dedebd5ff3002eb$export$2e2bcd8739ae039 {
|
|
|
1291
1464
|
});
|
|
1292
1465
|
this.webcamProducer = null;
|
|
1293
1466
|
const event = new CustomEvent("localVideoUnavailable");
|
|
1294
|
-
|
|
1467
|
+
this.dispatchEvent(event);
|
|
1295
1468
|
}
|
|
1296
1469
|
async enableScreenshare() {
|
|
1297
1470
|
const stream = await this.handleGetUserMediaError("screen", navigator.mediaDevices.getDisplayMedia({
|
|
@@ -1313,7 +1486,7 @@ class $1dedebd5ff3002eb$export$2e2bcd8739ae039 {
|
|
|
1313
1486
|
if (!stream) return;
|
|
1314
1487
|
if (!this.sendVideoTransports) throw new Error("video screen transport not found");
|
|
1315
1488
|
const track = stream.getVideoTracks()[0];
|
|
1316
|
-
const encodings = undefined
|
|
1489
|
+
const encodings = undefined;
|
|
1317
1490
|
const codecOptions = {
|
|
1318
1491
|
videoGoogleStartBitrate: 1000
|
|
1319
1492
|
};
|
|
@@ -1334,7 +1507,7 @@ class $1dedebd5ff3002eb$export$2e2bcd8739ae039 {
|
|
|
1334
1507
|
this.disableScreenshare().catch(()=>{});
|
|
1335
1508
|
});
|
|
1336
1509
|
const event = new CustomEvent("screenshareEnabled");
|
|
1337
|
-
|
|
1510
|
+
this.dispatchEvent(event);
|
|
1338
1511
|
}
|
|
1339
1512
|
async disableScreenshare() {
|
|
1340
1513
|
if (this.screenshareProducer) {
|
|
@@ -1345,30 +1518,29 @@ class $1dedebd5ff3002eb$export$2e2bcd8739ae039 {
|
|
|
1345
1518
|
this.screenshareProducer = null;
|
|
1346
1519
|
}
|
|
1347
1520
|
const event = new CustomEvent("screenshareDisabled");
|
|
1348
|
-
|
|
1521
|
+
this.dispatchEvent(event);
|
|
1349
1522
|
}
|
|
1350
1523
|
onConsumerClose({ consumerId: consumerId }) {
|
|
1351
1524
|
const consumer = this.consumers.get(consumerId);
|
|
1352
1525
|
if (consumer) {
|
|
1526
|
+
const producerId = consumer.mediaSoupConsumer.producerId;
|
|
1527
|
+
this.peers.forEach((value)=>{
|
|
1528
|
+
const index = value.producersData.findIndex((ele)=>ele.producerId === producerId);
|
|
1529
|
+
if (index !== -1) value.producersData.splice(index, 1);
|
|
1530
|
+
});
|
|
1353
1531
|
consumer.mediaSoupConsumer.close();
|
|
1354
1532
|
this.consumers.delete(consumerId);
|
|
1533
|
+
this.scaleVideo();
|
|
1355
1534
|
const event = new CustomEvent("consumerClose", {
|
|
1356
1535
|
detail: {
|
|
1357
1536
|
peerId: consumer.mediaSoupConsumer.appData.peerId,
|
|
1358
1537
|
deviceType: consumer.deviceType
|
|
1359
1538
|
}
|
|
1360
1539
|
});
|
|
1361
|
-
|
|
1540
|
+
if (consumer.deviceType === "microphone") this.deleteAudioRenderer(consumerId);
|
|
1541
|
+
this.dispatchEvent(event);
|
|
1362
1542
|
}
|
|
1363
1543
|
}
|
|
1364
|
-
requestVoice({ consumerId: consumerId , element: element }) {
|
|
1365
|
-
const consumer = this.consumers.get(consumerId);
|
|
1366
|
-
if (consumer) {
|
|
1367
|
-
const mediaStream = new MediaStream();
|
|
1368
|
-
mediaStream.addTrack(consumer.mediaSoupConsumer.track);
|
|
1369
|
-
element.srcObject = mediaStream;
|
|
1370
|
-
} else console.error(`Audio consumer ${consumerId} not found`);
|
|
1371
|
-
}
|
|
1372
1544
|
requestVideo({ consumerId: consumerId , element: element }) {
|
|
1373
1545
|
const consumer = this.consumers.get(consumerId);
|
|
1374
1546
|
if (consumer) {
|
|
@@ -1381,8 +1553,8 @@ class $1dedebd5ff3002eb$export$2e2bcd8739ae039 {
|
|
|
1381
1553
|
}
|
|
1382
1554
|
async captureVideo(videoElement) {
|
|
1383
1555
|
let image;
|
|
1384
|
-
if (videoElement) image = (0, $
|
|
1385
|
-
else if (this.webcamProducer && this.webcamProducer.track) image = await (0, $
|
|
1556
|
+
if (videoElement) image = await (0, $3575c8a563f2a1da$export$674c90a250a8b2c5)(videoElement);
|
|
1557
|
+
else if (this.webcamProducer && this.webcamProducer.track) image = await (0, $3575c8a563f2a1da$export$4a210166cc9cb64b)(this.webcamProducer.track);
|
|
1386
1558
|
else throw new Error("no video to capture");
|
|
1387
1559
|
return image;
|
|
1388
1560
|
}
|
|
@@ -1427,6 +1599,12 @@ class $1dedebd5ff3002eb$export$2e2bcd8739ae039 {
|
|
|
1427
1599
|
transportId: transport.transport.id,
|
|
1428
1600
|
rtpCapabilities: this.mediasoupDevice.rtpCapabilities
|
|
1429
1601
|
});
|
|
1602
|
+
const peer = this.peers.get(peerId);
|
|
1603
|
+
if (peer) peer.producersData.push({
|
|
1604
|
+
producerId: producerId,
|
|
1605
|
+
deviceType: deviceType,
|
|
1606
|
+
paused: paused
|
|
1607
|
+
});
|
|
1430
1608
|
const { producerId: resolvedProducerId , id: id , kind: kind , rtpParameters: rtpParameters , appData: appData } = data;
|
|
1431
1609
|
console.log("Data: ", data);
|
|
1432
1610
|
try {
|
|
@@ -1446,6 +1624,7 @@ class $1dedebd5ff3002eb$export$2e2bcd8739ae039 {
|
|
|
1446
1624
|
mediaSoupConsumer: consumer,
|
|
1447
1625
|
deviceType: deviceType
|
|
1448
1626
|
});
|
|
1627
|
+
this.scaleVideo();
|
|
1449
1628
|
const event = new CustomEvent("newConsumer", {
|
|
1450
1629
|
detail: {
|
|
1451
1630
|
peerId: peerId,
|
|
@@ -1454,7 +1633,14 @@ class $1dedebd5ff3002eb$export$2e2bcd8739ae039 {
|
|
|
1454
1633
|
paused: paused
|
|
1455
1634
|
}
|
|
1456
1635
|
});
|
|
1457
|
-
|
|
1636
|
+
this.dispatchEvent(event);
|
|
1637
|
+
if (consumer.kind === "audio") {
|
|
1638
|
+
const audioRenderer = this.createAudioRenderer(consumer.id);
|
|
1639
|
+
const mediaStream = new MediaStream();
|
|
1640
|
+
mediaStream.addTrack(consumer.track);
|
|
1641
|
+
audioRenderer.setSource(mediaStream);
|
|
1642
|
+
audioRenderer.play();
|
|
1643
|
+
}
|
|
1458
1644
|
if (consumer.kind === "video") await this.protoo.request("resumeConsumer", {
|
|
1459
1645
|
consumerId: consumer.id
|
|
1460
1646
|
});
|
|
@@ -1474,7 +1660,7 @@ class $1dedebd5ff3002eb$export$2e2bcd8739ae039 {
|
|
|
1474
1660
|
displayName: displayName
|
|
1475
1661
|
}
|
|
1476
1662
|
});
|
|
1477
|
-
|
|
1663
|
+
this.dispatchEvent(event);
|
|
1478
1664
|
}
|
|
1479
1665
|
async requestPeerDevice(remotePeerId, deviceType) {
|
|
1480
1666
|
return this.protoo.request("requestPeerDevice", {
|
|
@@ -1550,6 +1736,66 @@ class $1dedebd5ff3002eb$export$2e2bcd8739ae039 {
|
|
|
1550
1736
|
});
|
|
1551
1737
|
await Promise.all(chunksPromises);
|
|
1552
1738
|
}
|
|
1739
|
+
async listAudioDevices() {
|
|
1740
|
+
const devices = await navigator.mediaDevices.enumerateDevices();
|
|
1741
|
+
return devices.filter((device)=>device.kind === "audioinput" || device.kind === "audiooutput");
|
|
1742
|
+
}
|
|
1743
|
+
async listVideoDevices() {
|
|
1744
|
+
const devices = await navigator.mediaDevices.enumerateDevices();
|
|
1745
|
+
return devices.filter((device)=>device.kind === "videoinput");
|
|
1746
|
+
}
|
|
1747
|
+
isListDevicesSupported() {
|
|
1748
|
+
return Boolean(navigator.mediaDevices?.enumerateDevices);
|
|
1749
|
+
}
|
|
1750
|
+
getCurrentWebcam() {
|
|
1751
|
+
return this.webcam;
|
|
1752
|
+
}
|
|
1753
|
+
getWebcamsList() {
|
|
1754
|
+
return this.webcams;
|
|
1755
|
+
}
|
|
1756
|
+
async setWebcamResolution(resolution) {
|
|
1757
|
+
if (this.webcam.device) await this.switchWebcam({
|
|
1758
|
+
resolution: resolution
|
|
1759
|
+
});
|
|
1760
|
+
else {
|
|
1761
|
+
this.webcam.resolution = resolution;
|
|
1762
|
+
const e = new CustomEvent("localVideoChange", {
|
|
1763
|
+
detail: {
|
|
1764
|
+
camera: this.getCurrentWebcam()
|
|
1765
|
+
}
|
|
1766
|
+
});
|
|
1767
|
+
this.dispatchEvent(e);
|
|
1768
|
+
}
|
|
1769
|
+
}
|
|
1770
|
+
createAudioRenderer(consumerId) {
|
|
1771
|
+
const renderer = new (0, $1bfa11322d1d6377$export$2e2bcd8739ae039)({
|
|
1772
|
+
consumerId: consumerId
|
|
1773
|
+
});
|
|
1774
|
+
this.audioRenderers[consumerId] = renderer;
|
|
1775
|
+
return renderer;
|
|
1776
|
+
}
|
|
1777
|
+
deleteAudioRenderer(consumerId) {
|
|
1778
|
+
this.audioRenderers[consumerId]?.destroy();
|
|
1779
|
+
delete this.audioRenderers[consumerId];
|
|
1780
|
+
}
|
|
1781
|
+
async playAudioRenderer(consumerId) {
|
|
1782
|
+
await this.audioRenderers[consumerId]?.play();
|
|
1783
|
+
}
|
|
1784
|
+
async setAudioSink(sinkId) {
|
|
1785
|
+
const promises = Object.keys(this.audioRenderers).map((consumerId)=>this.audioRenderers[consumerId].setSink(sinkId).catch((err)=>console.warn("Failed to setSinkId on renderer (consumerId: %s): ", consumerId, err)));
|
|
1786
|
+
await Promise.allSettled(promises);
|
|
1787
|
+
}
|
|
1788
|
+
dispatchEvent(event) {
|
|
1789
|
+
const result = super.dispatchEvent(event);
|
|
1790
|
+
window.dispatchEvent(event);
|
|
1791
|
+
return result;
|
|
1792
|
+
}
|
|
1793
|
+
async getShareLinkData(url) {
|
|
1794
|
+
const data = await this.protoo.request("shareLink", {
|
|
1795
|
+
url: url
|
|
1796
|
+
});
|
|
1797
|
+
return data;
|
|
1798
|
+
}
|
|
1553
1799
|
}
|
|
1554
1800
|
|
|
1555
1801
|
|
|
@@ -1790,46 +2036,46 @@ var $6d8b37b4bd2444ef$export$2e2bcd8739ae039 = $6d8b37b4bd2444ef$var$SnapcallLog
|
|
|
1790
2036
|
|
|
1791
2037
|
|
|
1792
2038
|
const $cce7f1c9e9c29503$export$6546b255bd3a2004 = ()=>/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)("svg", {
|
|
1793
|
-
width: "
|
|
1794
|
-
height: "
|
|
1795
|
-
viewBox: "0 0
|
|
2039
|
+
width: "24",
|
|
2040
|
+
height: "24",
|
|
2041
|
+
viewBox: "0 0 24 24",
|
|
1796
2042
|
fill: "none",
|
|
1797
2043
|
xmlns: "http://www.w3.org/2000/svg",
|
|
1798
2044
|
children: /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)("path", {
|
|
1799
|
-
d: "
|
|
2045
|
+
d: "M19 2H9a3 3 0 0 0-3 3v1H5a3 3 0 0 0-3 3v10a3 3 0 0 0 3 3h10a3 3 0 0 0 3-3v-1h1a3 3 0 0 0 3-3V5a3 3 0 0 0-3-3Zm-3 17a1 1 0 0 1-1 1H5a1 1 0 0 1-1-1v-7h12v7Zm0-9H4V9a1 1 0 0 1 1-1h10a1 1 0 0 1 1 1v1Zm4 5a1 1 0 0 1-1 1h-1V9a3 3 0 0 0-.18-1H20v7Zm0-9H8V5a1 1 0 0 1 1-1h10a1 1 0 0 1 1 1v1Z",
|
|
1800
2046
|
fill: "#fff"
|
|
1801
2047
|
})
|
|
1802
2048
|
});
|
|
1803
2049
|
const $cce7f1c9e9c29503$export$92ce62e1201c4fc0 = ()=>/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)("svg", {
|
|
1804
|
-
width: "
|
|
1805
|
-
height: "
|
|
1806
|
-
viewBox: "0 0
|
|
2050
|
+
width: "24",
|
|
2051
|
+
height: "24",
|
|
2052
|
+
viewBox: "0 0 24 24",
|
|
1807
2053
|
fill: "none",
|
|
1808
2054
|
xmlns: "http://www.w3.org/2000/svg",
|
|
1809
2055
|
children: /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)("path", {
|
|
1810
|
-
d: "
|
|
2056
|
+
d: "M21 8.94a1.307 1.307 0 0 0-.06-.27v-.09a1.07 1.07 0 0 0-.19-.28l-6-6a1.071 1.071 0 0 0-.28-.19.32.32 0 0 0-.09 0 .88.88 0 0 0-.33-.11H10a3 3 0 0 0-3 3v1H6a3 3 0 0 0-3 3v10a3 3 0 0 0 3 3h8a3 3 0 0 0 3-3v-1h1a3 3 0 0 0 3-3V8.94Zm-6-3.53L17.59 8H16a1 1 0 0 1-1-1V5.41ZM15 19a1 1 0 0 1-1 1H6a1 1 0 0 1-1-1V9a1 1 0 0 1 1-1h1v7a3 3 0 0 0 3 3h5v1Zm4-4a1 1 0 0 1-1 1h-8a1 1 0 0 1-1-1V5a1 1 0 0 1 1-1h3v3a3 3 0 0 0 3 3h3v5Z",
|
|
1811
2057
|
fill: "#fff"
|
|
1812
2058
|
})
|
|
1813
2059
|
});
|
|
1814
2060
|
const $cce7f1c9e9c29503$export$6470d09a29d34d08 = ()=>/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)("svg", {
|
|
1815
|
-
width: "
|
|
1816
|
-
height: "
|
|
1817
|
-
viewBox: "0 0
|
|
2061
|
+
width: "24",
|
|
2062
|
+
height: "24",
|
|
2063
|
+
viewBox: "0 0 24 24",
|
|
1818
2064
|
fill: "none",
|
|
1819
2065
|
xmlns: "http://www.w3.org/2000/svg",
|
|
1820
2066
|
children: /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)("path", {
|
|
1821
|
-
d: "
|
|
2067
|
+
d: "M8 21H4a1 1 0 0 1-1-1v-4a1 1 0 1 0-2 0v4a3 3 0 0 0 3 3h4a1 1 0 0 0 0-2Zm14-6a1 1 0 0 0-1 1v4a1 1 0 0 1-1 1h-4a1 1 0 0 0 0 2h4a3 3 0 0 0 3-3v-4a1 1 0 0 0-1-1ZM20 1h-4a1 1 0 1 0 0 2h4a1 1 0 0 1 1 1v4a1 1 0 0 0 2 0V4a3 3 0 0 0-3-3ZM2 9a1 1 0 0 0 1-1V4a1 1 0 0 1 1-1h4a1 1 0 0 0 0-2H4a3 3 0 0 0-3 3v4a1 1 0 0 0 1 1Zm8-4H6a1 1 0 0 0-1 1v4a1 1 0 0 0 1 1h4a1 1 0 0 0 1-1V6a1 1 0 0 0-1-1ZM9 9H7V7h2v2Zm5 2h4a1 1 0 0 0 1-1V6a1 1 0 0 0-1-1h-4a1 1 0 0 0-1 1v4a1 1 0 0 0 1 1Zm1-4h2v2h-2V7Zm-5 6H6a1 1 0 0 0-1 1v4a1 1 0 0 0 1 1h4a1 1 0 0 0 1-1v-4a1 1 0 0 0-1-1Zm-1 4H7v-2h2v2Zm5-1a1 1 0 0 0 1-1 1 1 0 0 0 0-2h-1a1 1 0 0 0-1 1v1a1 1 0 0 0 1 1Zm4-3a1 1 0 0 0-1 1v3a1 1 0 0 0 0 2h1a1 1 0 0 0 1-1v-4a1 1 0 0 0-1-1Zm-4 4a1 1 0 1 0 0 2 1 1 0 0 0 0-2Z",
|
|
1822
2068
|
fill: "#fff"
|
|
1823
2069
|
})
|
|
1824
2070
|
});
|
|
1825
2071
|
const $cce7f1c9e9c29503$export$1095c93890fce526 = ()=>/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)("svg", {
|
|
1826
|
-
width: "
|
|
1827
|
-
height: "
|
|
1828
|
-
viewBox: "0 0
|
|
2072
|
+
width: "24",
|
|
2073
|
+
height: "24",
|
|
2074
|
+
viewBox: "0 0 24 24",
|
|
1829
2075
|
fill: "none",
|
|
1830
2076
|
xmlns: "http://www.w3.org/2000/svg",
|
|
1831
2077
|
children: /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)("path", {
|
|
1832
|
-
d: "
|
|
2078
|
+
d: "m21.32 9.55-1.89-.63.89-1.78A1 1 0 0 0 20.13 6L18 3.87a1 1 0 0 0-1.15-.19l-1.78.89-.63-1.89A1 1 0 0 0 13.5 2h-3a1 1 0 0 0-.95.68l-.63 1.89-1.78-.89A1 1 0 0 0 6 3.87L3.87 6a1 1 0 0 0-.19 1.15l.89 1.78-1.89.63a1 1 0 0 0-.68.94v3a1 1 0 0 0 .68.95l1.89.63-.89 1.78A1 1 0 0 0 3.87 18L6 20.13a1 1 0 0 0 1.15.19l1.78-.89.63 1.89a1 1 0 0 0 .95.68h3a1 1 0 0 0 .95-.68l.63-1.89 1.78.89a1 1 0 0 0 1.13-.19L20.13 18a1 1 0 0 0 .19-1.15l-.89-1.78 1.89-.63a1 1 0 0 0 .68-.94v-3a1 1 0 0 0-.68-.95ZM20 12.78l-1.2.4A2 2 0 0 0 17.64 16l.57 1.14-1.1 1.1-1.11-.6a2 2 0 0 0-2.79 1.16l-.4 1.2h-1.59l-.4-1.2A2 2 0 0 0 8 17.64l-1.14.57-1.1-1.1.6-1.11a2 2 0 0 0-1.16-2.82l-1.2-.4v-1.56l1.2-.4A2 2 0 0 0 6.36 8l-.57-1.11 1.1-1.1L8 6.36a2 2 0 0 0 2.82-1.16l.4-1.2h1.56l.4 1.2A2 2 0 0 0 16 6.36l1.14-.57 1.1 1.1-.6 1.11a2 2 0 0 0 1.16 2.79l1.2.4v1.59ZM12 8a4 4 0 1 0 0 8 4 4 0 0 0 0-8Zm0 6a2 2 0 1 1 0-4 2 2 0 0 1 0 4Z",
|
|
1833
2079
|
fill: "#fff"
|
|
1834
2080
|
})
|
|
1835
2081
|
});
|
|
@@ -1861,9 +2107,17 @@ const $cce7f1c9e9c29503$export$5170987d58ae338d = ()=>/*#__PURE__*/ (0, $jQDcL$r
|
|
|
1861
2107
|
viewBox: "0 0 24 24",
|
|
1862
2108
|
fill: "none",
|
|
1863
2109
|
xmlns: "http://www.w3.org/2000/svg",
|
|
1864
|
-
children: /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.
|
|
1865
|
-
|
|
1866
|
-
fill: "#fff"
|
|
2110
|
+
children: /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsxs)("g", {
|
|
2111
|
+
clipPath: "url(#pip)",
|
|
2112
|
+
fill: "#fff",
|
|
2113
|
+
children: [
|
|
2114
|
+
/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)("path", {
|
|
2115
|
+
d: "M0 5v10a3 3 0 0 0 3 3h14a3 3 0 0 0 3-3V5a3 3 0 0 0-3-3H3a3 3 0 0 0-3 3Zm17-1a1 1 0 0 1 1 1v10a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V5a1 1 0 0 1 1-1h14Z"
|
|
2116
|
+
}),
|
|
2117
|
+
/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)("path", {
|
|
2118
|
+
d: "M10 14v4.879a3 3 0 0 0 3 3h8a3 3 0 0 0 3-3V14a3 3 0 0 0-3-3h-8a3 3 0 0 0-3 3ZM10 11.149c0 .113-.02.226-.06.332a.85.85 0 0 1-.8.519H5.736a.851.851 0 0 1 0-1.702h1.353l-2.792-2.8a.851.851 0 1 1 1.2-1.2l2.8 2.8V7.744a.851.851 0 0 1 1.703 0v3.405Z"
|
|
2119
|
+
})
|
|
2120
|
+
]
|
|
1867
2121
|
})
|
|
1868
2122
|
});
|
|
1869
2123
|
|
|
@@ -1905,6 +2159,7 @@ const $4890069d0b6c2ba3$export$b286f91cddfedb5a = (0, ($parcel$interopDefault($j
|
|
|
1905
2159
|
white-space: nowrap;
|
|
1906
2160
|
max-height: 70vh;
|
|
1907
2161
|
overflow: auto;
|
|
2162
|
+
border: 1px solid rgba(255, 255, 255, 0.1);
|
|
1908
2163
|
|
|
1909
2164
|
${$4890069d0b6c2ba3$export$d00c23c5e97ada8}:not(:last-child) {
|
|
1910
2165
|
border-bottom: 1px solid rgba(255, 255, 255, 0.1);
|
|
@@ -1991,7 +2246,7 @@ const $1949f8f101c8cf77$export$1e86fd0e1db89578 = (0, ($parcel$interopDefault($j
|
|
|
1991
2246
|
justify-content: space-between;
|
|
1992
2247
|
align-items: center;
|
|
1993
2248
|
background-color: ${(props)=>props.theme.backgroundColor};
|
|
1994
|
-
height:
|
|
2249
|
+
height: 65px;
|
|
1995
2250
|
padding: 0 15px;
|
|
1996
2251
|
|
|
1997
2252
|
@media (max-height: 500px) {
|
|
@@ -2008,6 +2263,8 @@ const $1949f8f101c8cf77$export$4dc2e6a0e59ffa13 = (0, ($parcel$interopDefault($j
|
|
|
2008
2263
|
line-height: 16px;
|
|
2009
2264
|
color: #fff;
|
|
2010
2265
|
margin-left: 5px;
|
|
2266
|
+
position: relative;
|
|
2267
|
+
bottom: 1px;
|
|
2011
2268
|
`;
|
|
2012
2269
|
const $1949f8f101c8cf77$export$8376625f8bb18347 = (0, ($parcel$interopDefault($jQDcL$styledcomponents))).div`
|
|
2013
2270
|
display: flex;
|
|
@@ -2348,6 +2605,7 @@ class $21395e477f83709c$export$45fabd1ce5e673de {
|
|
|
2348
2605
|
|
|
2349
2606
|
|
|
2350
2607
|
const $e1930b467e7d8845$var$multiPiP = new (0, $21395e477f83709c$export$45fabd1ce5e673de)();
|
|
2608
|
+
const $e1930b467e7d8845$var$browser = $jQDcL$bowser.parse(window.navigator.userAgent);
|
|
2351
2609
|
const $e1930b467e7d8845$var$Header = ()=>{
|
|
2352
2610
|
const { setIsQuickConnectPopupVisible: setIsQuickConnectPopupVisible , setIsSettingsMenuVisible: setIsSettingsMenuVisible , options: options , muted: muted , streaming: streaming } = (0, $jQDcL$react.useContext)((0, $8b39f32976a7698a$export$2e2bcd8739ae039));
|
|
2353
2611
|
const { streams: streams } = (0, $3f6e908c45fcc5b3$export$b5633a7cfbe42d9f)();
|
|
@@ -2443,7 +2701,7 @@ const $e1930b467e7d8845$var$Header = ()=>{
|
|
|
2443
2701
|
]
|
|
2444
2702
|
},
|
|
2445
2703
|
];
|
|
2446
|
-
if (document.pictureInPictureEnabled) computedCategories[0].items.push({
|
|
2704
|
+
if (document.pictureInPictureEnabled && $e1930b467e7d8845$var$browser.platform.type === "desktop") computedCategories[0].items.push({
|
|
2447
2705
|
id: "pip",
|
|
2448
2706
|
title: "Picture-in-Picture",
|
|
2449
2707
|
jsxIcon: /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)((0, $cce7f1c9e9c29503$export$5170987d58ae338d), {}),
|
|
@@ -2484,25 +2742,26 @@ var $e1930b467e7d8845$export$2e2bcd8739ae039 = $e1930b467e7d8845$var$Header;
|
|
|
2484
2742
|
|
|
2485
2743
|
|
|
2486
2744
|
|
|
2487
|
-
const $
|
|
2745
|
+
const $56e1e7a85d8bf4bb$export$2b86bedf890eab8 = (element)=>{
|
|
2488
2746
|
const [size, setSize] = (0, $jQDcL$react.useState)([
|
|
2489
2747
|
0,
|
|
2490
2748
|
0
|
|
2491
2749
|
]);
|
|
2492
2750
|
(0, $jQDcL$react.useLayoutEffect)(()=>{
|
|
2493
2751
|
const updateSize = ()=>setSize([
|
|
2494
|
-
element?.offsetWidth ||
|
|
2495
|
-
element?.offsetHeight ||
|
|
2752
|
+
element?.offsetWidth || 0,
|
|
2753
|
+
element?.offsetHeight || 0
|
|
2496
2754
|
]);
|
|
2497
|
-
|
|
2498
|
-
|
|
2499
|
-
|
|
2755
|
+
if (element) {
|
|
2756
|
+
const observer = new ResizeObserver(updateSize);
|
|
2757
|
+
observer.observe(element);
|
|
2758
|
+
return ()=>observer.unobserve(element);
|
|
2759
|
+
}
|
|
2500
2760
|
}, [
|
|
2501
2761
|
element
|
|
2502
2762
|
]);
|
|
2503
2763
|
return size;
|
|
2504
2764
|
};
|
|
2505
|
-
var $e79bb9d030bdcf5b$export$2e2bcd8739ae039 = $e79bb9d030bdcf5b$var$useWindowSize;
|
|
2506
2765
|
|
|
2507
2766
|
|
|
2508
2767
|
|
|
@@ -2512,15 +2771,11 @@ var $e79bb9d030bdcf5b$export$2e2bcd8739ae039 = $e79bb9d030bdcf5b$var$useWindowSi
|
|
|
2512
2771
|
|
|
2513
2772
|
|
|
2514
2773
|
|
|
2515
|
-
|
|
2516
|
-
const $0ac48791ff0bcc8e$var$ThemedPath = (0, ($parcel$interopDefault($jQDcL$styledcomponents))).path`
|
|
2517
|
-
fill: ${(props)=>props.theme.controlsIconColor};
|
|
2518
|
-
`;
|
|
2519
2774
|
const $0ac48791ff0bcc8e$var$Microphone = ({ slash: slash , redSlash: redSlash , status: status , deviceRequest: deviceRequest })=>{
|
|
2520
2775
|
if (slash) return /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsxs)("svg", {
|
|
2521
|
-
width: "
|
|
2522
|
-
height: "
|
|
2523
|
-
viewBox: "0 0
|
|
2776
|
+
width: "24",
|
|
2777
|
+
height: "24",
|
|
2778
|
+
viewBox: "0 0 24 24",
|
|
2524
2779
|
fill: "none",
|
|
2525
2780
|
xmlns: "http://www.w3.org/2000/svg",
|
|
2526
2781
|
children: [
|
|
@@ -2556,13 +2811,13 @@ const $0ac48791ff0bcc8e$var$Microphone = ({ slash: slash , redSlash: redSlash ,
|
|
|
2556
2811
|
]
|
|
2557
2812
|
});
|
|
2558
2813
|
if (status) return /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)("svg", {
|
|
2559
|
-
width: "
|
|
2560
|
-
height: "
|
|
2561
|
-
viewBox: "0 0
|
|
2814
|
+
width: "14",
|
|
2815
|
+
height: "14",
|
|
2816
|
+
viewBox: "0 0 14 14",
|
|
2562
2817
|
fill: "none",
|
|
2563
2818
|
xmlns: "http://www.w3.org/2000/svg",
|
|
2564
2819
|
children: /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)("path", {
|
|
2565
|
-
d: "
|
|
2820
|
+
d: "M6.125 2.176a1.167 1.167 0 0 1 1.72-.082c.211.222.326.517.321.823v1.99a.583.583 0 1 0 1.167 0v-1.99A2.333 2.333 0 0 0 5.25 1.44a.583.583 0 1 0 .875.735Zm4.795 5.565h.117a.583.583 0 0 0 .583-.472c.042-.282.057-.567.046-.852a.584.584 0 0 0-1.166 0c0 .215-.022.43-.064.642a.583.583 0 0 0 .484.682Zm1.75 3.535L2.17.776a.583.583 0 1 0-.829.823l3.325 3.348v1.47a2.333 2.333 0 0 0 3.5 2.018l.852.852A3.5 3.5 0 0 1 3.5 6.417a.583.583 0 0 0-1.167 0 4.667 4.667 0 0 0 4.083 4.626v1.207H5.25a.583.583 0 0 0 0 1.167h3.5a.583.583 0 0 0 0-1.167H7.583v-1.207a4.59 4.59 0 0 0 2.246-.928l1.983 1.984a.584.584 0 0 0 .829-.823h.029ZM7 7.584a1.167 1.167 0 0 1-1.167-1.167v-.303l1.43 1.435A1.015 1.015 0 0 1 7 7.584Z",
|
|
2566
2821
|
fill: "#fff"
|
|
2567
2822
|
})
|
|
2568
2823
|
});
|
|
@@ -2584,13 +2839,14 @@ const $0ac48791ff0bcc8e$var$Microphone = ({ slash: slash , redSlash: redSlash ,
|
|
|
2584
2839
|
]
|
|
2585
2840
|
});
|
|
2586
2841
|
return /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)("svg", {
|
|
2587
|
-
width: "
|
|
2588
|
-
height: "
|
|
2589
|
-
viewBox: "0 0
|
|
2842
|
+
width: "24",
|
|
2843
|
+
height: "24",
|
|
2844
|
+
viewBox: "0 0 24 24",
|
|
2590
2845
|
fill: "none",
|
|
2591
2846
|
xmlns: "http://www.w3.org/2000/svg",
|
|
2592
|
-
children: /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)(
|
|
2593
|
-
d: "
|
|
2847
|
+
children: /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)("path", {
|
|
2848
|
+
d: "M12 15a4 4 0 0 0 4-4V5a4 4 0 1 0-8 0v6a4 4 0 0 0 4 4ZM10 5a2 2 0 1 1 4 0v6a2 2 0 0 1-4 0V5Zm10 6a1 1 0 0 0-2 0 6 6 0 1 1-12 0 1 1 0 1 0-2 0 8 8 0 0 0 7 7.93V21H9a1 1 0 0 0 0 2h6a1 1 0 0 0 0-2h-2v-2.07A8 8 0 0 0 20 11Z",
|
|
2849
|
+
fill: "#fff"
|
|
2594
2850
|
})
|
|
2595
2851
|
});
|
|
2596
2852
|
};
|
|
@@ -2598,15 +2854,11 @@ var $0ac48791ff0bcc8e$export$2e2bcd8739ae039 = $0ac48791ff0bcc8e$var$Microphone;
|
|
|
2598
2854
|
|
|
2599
2855
|
|
|
2600
2856
|
|
|
2601
|
-
|
|
2602
|
-
const $ab00aedf8a706bfe$var$ThemedPath = (0, ($parcel$interopDefault($jQDcL$styledcomponents))).path`
|
|
2603
|
-
fill: ${(props)=>props.theme.controlsIconColor};
|
|
2604
|
-
`;
|
|
2605
2857
|
const $ab00aedf8a706bfe$var$Camera = ({ slash: slash , status: status , deviceRequest: deviceRequest })=>{
|
|
2606
2858
|
if (slash) return /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsxs)("svg", {
|
|
2607
|
-
width: "
|
|
2608
|
-
height: "
|
|
2609
|
-
viewBox: "0 0
|
|
2859
|
+
width: "24",
|
|
2860
|
+
height: "24",
|
|
2861
|
+
viewBox: "0 0 24 24",
|
|
2610
2862
|
fill: "none",
|
|
2611
2863
|
xmlns: "http://www.w3.org/2000/svg",
|
|
2612
2864
|
children: [
|
|
@@ -2623,13 +2875,13 @@ const $ab00aedf8a706bfe$var$Camera = ({ slash: slash , status: status , deviceRe
|
|
|
2623
2875
|
]
|
|
2624
2876
|
});
|
|
2625
2877
|
if (status) return /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)("svg", {
|
|
2626
|
-
width: "
|
|
2627
|
-
height: "
|
|
2628
|
-
viewBox: "0 0
|
|
2878
|
+
width: "14",
|
|
2879
|
+
height: "14",
|
|
2880
|
+
viewBox: "0 0 14 14",
|
|
2629
2881
|
fill: "none",
|
|
2630
2882
|
xmlns: "http://www.w3.org/2000/svg",
|
|
2631
2883
|
children: /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)("path", {
|
|
2632
|
-
d: "
|
|
2884
|
+
d: "M4.497 3.669 2.164 1.336a.586.586 0 1 0-.828.828L2.695 3.5a1.75 1.75 0 0 0-1.529 1.75v3.5a1.75 1.75 0 0 0 1.75 1.75h5.25a1.75 1.75 0 0 0 1.109-.403l2.56 2.567a.583.583 0 0 0 .957-.19.582.582 0 0 0-.128-.638L4.497 3.669Zm3.67 5.664h-5.25a.583.583 0 0 1-.584-.583v-3.5a.583.583 0 0 1 .583-.584h.928l4.59 4.597a.583.583 0 0 1-.268.07Zm4.392-5.162a.583.583 0 0 0-.583 0l-2.06 1.015A1.75 1.75 0 0 0 8.166 3.5h-.781a.583.583 0 0 0 0 1.166h.781a.583.583 0 0 1 .584.584v.875a.944.944 0 0 0 0 .11.38.38 0 0 0 .029.117s.03.035.04.059a.584.584 0 0 0 .088.122s.059.035.088.058l.099.065c.044.006.09.006.134 0a.41.41 0 0 0 .082 0 .949.949 0 0 0 .11 0 .38.38 0 0 0 .117-.03l2.13-1.015v3.337a.583.583 0 0 0 1.166 0V4.666a.584.584 0 0 0-.274-.495Z",
|
|
2633
2885
|
fill: "#fff"
|
|
2634
2886
|
})
|
|
2635
2887
|
});
|
|
@@ -2651,13 +2903,14 @@ const $ab00aedf8a706bfe$var$Camera = ({ slash: slash , status: status , deviceRe
|
|
|
2651
2903
|
]
|
|
2652
2904
|
});
|
|
2653
2905
|
return /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)("svg", {
|
|
2654
|
-
width: "
|
|
2655
|
-
height: "
|
|
2656
|
-
viewBox: "0 0
|
|
2906
|
+
width: "24",
|
|
2907
|
+
height: "24",
|
|
2908
|
+
viewBox: "0 0 24 24",
|
|
2657
2909
|
fill: "none",
|
|
2658
2910
|
xmlns: "http://www.w3.org/2000/svg",
|
|
2659
|
-
children: /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)(
|
|
2660
|
-
d: "
|
|
2911
|
+
children: /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)("path", {
|
|
2912
|
+
d: "M21.53 7.15a1 1 0 0 0-1 0L17 8.89A3 3 0 0 0 14 6H5a3 3 0 0 0-3 3v6a3 3 0 0 0 3 3h9a3 3 0 0 0 3-2.89l3.56 1.78A1 1 0 0 0 21 17a1 1 0 0 0 .875-.514A1 1 0 0 0 22 16V8a1 1 0 0 0-.47-.85ZM15 15a1 1 0 0 1-1 1H5a1 1 0 0 1-1-1V9a1 1 0 0 1 1-1h9a1 1 0 0 1 1 1v6Zm5-.62-3-1.5v-1.76l3-1.5v4.76Z",
|
|
2913
|
+
fill: "#fff"
|
|
2661
2914
|
})
|
|
2662
2915
|
});
|
|
2663
2916
|
};
|
|
@@ -2675,18 +2928,18 @@ const $f2ca2ee422d05e6e$var$ThemedArrowPath = (0, ($parcel$interopDefault($jQDcL
|
|
|
2675
2928
|
`;
|
|
2676
2929
|
const $f2ca2ee422d05e6e$var$Screen = ({ arrow: arrow , white: white , deviceRequest: deviceRequest })=>{
|
|
2677
2930
|
if (deviceRequest) return /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsxs)("svg", {
|
|
2678
|
-
width: "
|
|
2931
|
+
width: "30",
|
|
2679
2932
|
height: "30",
|
|
2680
|
-
viewBox: "0 0
|
|
2933
|
+
viewBox: "0 0 30 30",
|
|
2681
2934
|
fill: "none",
|
|
2682
2935
|
xmlns: "http://www.w3.org/2000/svg",
|
|
2683
2936
|
children: [
|
|
2684
2937
|
/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)("path", {
|
|
2685
|
-
d: "M6.
|
|
2938
|
+
d: "M6.25 3.75h17.5A3.75 3.75 0 0 1 27.5 7.5v10a3.75 3.75 0 0 1-3.75 3.75H6.25A3.75 3.75 0 0 1 2.5 17.5v-10a3.75 3.75 0 0 1 3.75-3.75Z",
|
|
2686
2939
|
fill: "url(#screenTop)"
|
|
2687
2940
|
}),
|
|
2688
2941
|
/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)("path", {
|
|
2689
|
-
d: "
|
|
2942
|
+
d: "M13.75 23.75v-2.5h2.5v2.5h5a1.25 1.25 0 0 1 0 2.5H8.75a1.25 1.25 0 0 1 0-2.5h5Z",
|
|
2690
2943
|
fill: "url(#screenBottom)"
|
|
2691
2944
|
})
|
|
2692
2945
|
]
|
|
@@ -2714,6 +2967,22 @@ var $f2ca2ee422d05e6e$export$2e2bcd8739ae039 = $f2ca2ee422d05e6e$var$Screen;
|
|
|
2714
2967
|
|
|
2715
2968
|
|
|
2716
2969
|
|
|
2970
|
+
|
|
2971
|
+
const $caac3e068b613ef5$var$ThemedCirclePlain = (0, ($parcel$interopDefault($jQDcL$styledcomponents))).circle`
|
|
2972
|
+
stroke: ${({ theme: theme })=>theme.primaryColor};
|
|
2973
|
+
`;
|
|
2974
|
+
const $caac3e068b613ef5$var$ThemedCircleAlpha = (0, ($parcel$interopDefault($jQDcL$styledcomponents))).circle`
|
|
2975
|
+
stroke: ${({ theme: theme })=>$caac3e068b613ef5$var$hex2rgba(theme.primaryColor, 0.7683870967741935)};
|
|
2976
|
+
`;
|
|
2977
|
+
const $caac3e068b613ef5$var$hex2rgba = (hex, alpha)=>{
|
|
2978
|
+
const rh = hex.slice(1, 3);
|
|
2979
|
+
const gh = hex.slice(3, 5);
|
|
2980
|
+
const bh = hex.slice(5, 7);
|
|
2981
|
+
const rrgb = parseInt(rh, 16);
|
|
2982
|
+
const grgb = parseInt(gh, 16);
|
|
2983
|
+
const brgb = parseInt(bh, 16);
|
|
2984
|
+
return `rgba(${rrgb}, ${grgb}, ${brgb}, ${alpha})`;
|
|
2985
|
+
};
|
|
2717
2986
|
const $caac3e068b613ef5$var$Ripple = ()=>/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsxs)("svg", {
|
|
2718
2987
|
xmlns: "http://www.w3.org/2000/svg",
|
|
2719
2988
|
style: {
|
|
@@ -2729,12 +2998,11 @@ const $caac3e068b613ef5$var$Ripple = ()=>/*#__PURE__*/ (0, $jQDcL$reactjsxruntim
|
|
|
2729
2998
|
viewBox: "0 0 100 100",
|
|
2730
2999
|
preserveAspectRatio: "xMidYMid",
|
|
2731
3000
|
children: [
|
|
2732
|
-
/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsxs)(
|
|
3001
|
+
/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsxs)($caac3e068b613ef5$var$ThemedCirclePlain, {
|
|
2733
3002
|
cx: "50",
|
|
2734
3003
|
cy: "50",
|
|
2735
3004
|
r: "0",
|
|
2736
3005
|
fill: "none",
|
|
2737
|
-
stroke: "#6765fc",
|
|
2738
3006
|
children: [
|
|
2739
3007
|
/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)("animate", {
|
|
2740
3008
|
attributeName: "r",
|
|
@@ -2758,12 +3026,11 @@ const $caac3e068b613ef5$var$Ripple = ()=>/*#__PURE__*/ (0, $jQDcL$reactjsxruntim
|
|
|
2758
3026
|
})
|
|
2759
3027
|
]
|
|
2760
3028
|
}),
|
|
2761
|
-
/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsxs)(
|
|
3029
|
+
/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsxs)($caac3e068b613ef5$var$ThemedCircleAlpha, {
|
|
2762
3030
|
cx: "50",
|
|
2763
3031
|
cy: "50",
|
|
2764
3032
|
r: "0",
|
|
2765
3033
|
fill: "none",
|
|
2766
|
-
stroke: "rgba(102, 100, 252, 0.7683870967741935)",
|
|
2767
3034
|
children: [
|
|
2768
3035
|
/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)("animate", {
|
|
2769
3036
|
attributeName: "r",
|
|
@@ -2794,13 +3061,13 @@ var $caac3e068b613ef5$export$2e2bcd8739ae039 = $caac3e068b613ef5$var$Ripple;
|
|
|
2794
3061
|
|
|
2795
3062
|
|
|
2796
3063
|
const $0319693440f03062$var$User = ()=>/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)("svg", {
|
|
2797
|
-
width: "
|
|
2798
|
-
height: "
|
|
2799
|
-
viewBox: "0 0
|
|
3064
|
+
width: "24",
|
|
3065
|
+
height: "24",
|
|
3066
|
+
viewBox: "0 0 24 24",
|
|
2800
3067
|
fill: "none",
|
|
2801
3068
|
xmlns: "http://www.w3.org/2000/svg",
|
|
2802
3069
|
children: /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)("path", {
|
|
2803
|
-
d: "
|
|
3070
|
+
d: "M15.71 12.71a6 6 0 1 0-7.42 0 10 10 0 0 0-6.22 8.18 1.006 1.006 0 1 0 2 .22 8 8 0 0 1 15.9 0 1 1 0 0 0 1 .89h.11a1 1 0 0 0 .88-1.1 10 10 0 0 0-6.25-8.19ZM12 12a4 4 0 1 1 0-8 4 4 0 0 1 0 8Z",
|
|
2804
3071
|
fill: "#fff"
|
|
2805
3072
|
})
|
|
2806
3073
|
});
|
|
@@ -2809,33 +3076,250 @@ var $0319693440f03062$export$2e2bcd8739ae039 = $0319693440f03062$var$User;
|
|
|
2809
3076
|
|
|
2810
3077
|
|
|
2811
3078
|
|
|
2812
|
-
const $
|
|
2813
|
-
|
|
2814
|
-
|
|
2815
|
-
}
|
|
2816
|
-
|
|
2817
|
-
|
|
2818
|
-
|
|
2819
|
-
|
|
2820
|
-
}
|
|
2821
|
-
100% {
|
|
2822
|
-
opacity: 0;
|
|
2823
|
-
}
|
|
2824
|
-
`;
|
|
2825
|
-
const $2c45d365ee8aa1ab$export$c983850c6c9d8b0e = (0, $jQDcL$styledcomponents.keyframes)`
|
|
2826
|
-
0% {
|
|
2827
|
-
opacity: 0;
|
|
2828
|
-
}
|
|
2829
|
-
50% {
|
|
2830
|
-
opacity: 1;
|
|
2831
|
-
}
|
|
2832
|
-
100% {
|
|
2833
|
-
opacity: 0;
|
|
2834
|
-
}
|
|
3079
|
+
const $66c45b20958474ec$export$b302ef9d8310f71 = (0, ($parcel$interopDefault($jQDcL$styledcomponents))).div`
|
|
3080
|
+
display: flex;
|
|
3081
|
+
flex: 1;
|
|
3082
|
+
flex-direction: ${(props)=>props.direction};
|
|
3083
|
+
background-color: ${(props)=>props.theme.backgroundColor};
|
|
3084
|
+
padding: 0 10px;
|
|
3085
|
+
position: relative;
|
|
3086
|
+
overflow: hidden;
|
|
2835
3087
|
`;
|
|
2836
|
-
const $
|
|
2837
|
-
|
|
2838
|
-
|
|
3088
|
+
const $66c45b20958474ec$export$5d87c823a66d4f1a = (0, ($parcel$interopDefault($jQDcL$styledcomponents))).div`
|
|
3089
|
+
display: flex;
|
|
3090
|
+
width: ${(props)=>{
|
|
3091
|
+
if (props.audioTiles) return "100%";
|
|
3092
|
+
if (props.orientation === "landscape" && props.reduced) return "20%";
|
|
3093
|
+
return "100%";
|
|
3094
|
+
}};
|
|
3095
|
+
height: ${(props)=>{
|
|
3096
|
+
if (props.audioTiles) return "100%";
|
|
3097
|
+
if (props.orientation === "portrait" && props.reduced) return "50%";
|
|
3098
|
+
return "100%";
|
|
3099
|
+
}};
|
|
3100
|
+
flex-direction: row;
|
|
3101
|
+
flex-wrap: wrap;
|
|
3102
|
+
justify-content: center;
|
|
3103
|
+
align-content: center;
|
|
3104
|
+
gap: ${(props)=>props.audioTiles ? "48px" : "15px"};
|
|
3105
|
+
overflow: scroll;
|
|
3106
|
+
`;
|
|
3107
|
+
const $66c45b20958474ec$export$798352b46783b18d = (0, ($parcel$interopDefault($jQDcL$styledcomponents))).div`
|
|
3108
|
+
display: flex;
|
|
3109
|
+
justify-content: center;
|
|
3110
|
+
align-items: center;
|
|
3111
|
+
position: relative;
|
|
3112
|
+
background-color: ${(props)=>props.theme.streamTileBackgroundColor};
|
|
3113
|
+
border: ${(props)=>{
|
|
3114
|
+
if (props.activeBorder) return `2px solid ${props.theme.primaryColor}`;
|
|
3115
|
+
else if (props.border) return `2px solid ${props.theme.streamTileBorderColor}`;
|
|
3116
|
+
return `2px solid ${props.theme.backgroundColor}`;
|
|
3117
|
+
}};
|
|
3118
|
+
border-radius: 20px;
|
|
3119
|
+
color: #cbcbcb;
|
|
3120
|
+
box-sizing: border-box;
|
|
3121
|
+
max-height: 100%;
|
|
3122
|
+
cursor: ${(props)=>props.cursor ? props.cursor : "default"};
|
|
3123
|
+
`;
|
|
3124
|
+
const $66c45b20958474ec$export$d574f5511ec1d79a = (0, ($parcel$interopDefault($jQDcL$styledcomponents))).video`
|
|
3125
|
+
position: absolute;
|
|
3126
|
+
top: 0;
|
|
3127
|
+
left: 0;
|
|
3128
|
+
width: 100%;
|
|
3129
|
+
height: 100%;
|
|
3130
|
+
object-fit: cover;
|
|
3131
|
+
border-radius: inherit;
|
|
3132
|
+
transform: ${(props)=>props.mirror ? "scale(-1, 1)" : "none"};
|
|
3133
|
+
z-index: ${(props)=>props.zIndex ? props.zIndex : "unset"};
|
|
3134
|
+
`;
|
|
3135
|
+
const $66c45b20958474ec$export$778ed67917f5eacf = (0, ($parcel$interopDefault($jQDcL$styledcomponents))).div`
|
|
3136
|
+
display: flex;
|
|
3137
|
+
position: absolute;
|
|
3138
|
+
top: 8px;
|
|
3139
|
+
left: 8px;
|
|
3140
|
+
gap: 8px;
|
|
3141
|
+
z-index: 15;
|
|
3142
|
+
`;
|
|
3143
|
+
const $66c45b20958474ec$export$92fe811838849d7d = (0, ($parcel$interopDefault($jQDcL$styledcomponents))).div`
|
|
3144
|
+
display: flex;
|
|
3145
|
+
justify-content: center;
|
|
3146
|
+
align-items: center;
|
|
3147
|
+
width: 26px;
|
|
3148
|
+
height: 26px;
|
|
3149
|
+
border-radius: 50%;
|
|
3150
|
+
background-color: rgba(28, 32, 36, 0.25);
|
|
3151
|
+
`;
|
|
3152
|
+
const $66c45b20958474ec$export$a878cdfb933a1421 = (0, ($parcel$interopDefault($jQDcL$styledcomponents))).div`
|
|
3153
|
+
position: absolute;
|
|
3154
|
+
display: flex;
|
|
3155
|
+
align-items: center;
|
|
3156
|
+
gap: 5px;
|
|
3157
|
+
background: rgba(27, 32, 36, 0.25);
|
|
3158
|
+
border-radius: 50px;
|
|
3159
|
+
padding: 5px 10px 5px 5px;
|
|
3160
|
+
bottom: 8px;
|
|
3161
|
+
left: 8px;
|
|
3162
|
+
color: white;
|
|
3163
|
+
z-index: 15;
|
|
3164
|
+
`;
|
|
3165
|
+
const $66c45b20958474ec$export$b430fec6b171ceb5 = (0, ($parcel$interopDefault($jQDcL$styledcomponents))).span`
|
|
3166
|
+
display: inline-block;
|
|
3167
|
+
font-size: 11px;
|
|
3168
|
+
font-weight: 700;
|
|
3169
|
+
max-width: 100%;
|
|
3170
|
+
white-space: nowrap;
|
|
3171
|
+
overflow: hidden;
|
|
3172
|
+
text-overflow: ellipsis;
|
|
3173
|
+
box-sizing: border-box;
|
|
3174
|
+
`;
|
|
3175
|
+
const $66c45b20958474ec$export$f6525863ef5a71a9 = (0, ($parcel$interopDefault($jQDcL$styledcomponents))).div`
|
|
3176
|
+
display: flex;
|
|
3177
|
+
justify-content: center;
|
|
3178
|
+
align-items: center;
|
|
3179
|
+
width: 14px;
|
|
3180
|
+
height: 14px;
|
|
3181
|
+
padding: 3px 4px;
|
|
3182
|
+
box-sizing: border-box;
|
|
3183
|
+
background-color: #2d2d2d;
|
|
3184
|
+
border-radius: 50px;
|
|
3185
|
+
font-size: 9px;
|
|
3186
|
+
font-weight: 700;
|
|
3187
|
+
line-height: 8px;
|
|
3188
|
+
`;
|
|
3189
|
+
const $66c45b20958474ec$export$f217faec90120a0c = (0, ($parcel$interopDefault($jQDcL$styledcomponents))).div`
|
|
3190
|
+
display: flex;
|
|
3191
|
+
justify-content: center;
|
|
3192
|
+
align-items: center;
|
|
3193
|
+
flex-direction: column;
|
|
3194
|
+
width: 100%;
|
|
3195
|
+
height: 100%;
|
|
3196
|
+
border-radius: inherit;
|
|
3197
|
+
z-index: 10;
|
|
3198
|
+
background: ${(props)=>props.streaming ? "linear-gradient(0deg, rgba(0, 0, 0, 0.8), rgba(0, 0, 0, 0.8))" : "none"};
|
|
3199
|
+
`;
|
|
3200
|
+
const $66c45b20958474ec$export$df42e007689062b0 = (0, ($parcel$interopDefault($jQDcL$styledcomponents))).p`
|
|
3201
|
+
text-align: center;
|
|
3202
|
+
font-weight: 600;
|
|
3203
|
+
font-size: ${(props)=>{
|
|
3204
|
+
if (props.size === "small") return "12px";
|
|
3205
|
+
if (props.size === "medium") return "14px";
|
|
3206
|
+
if (props.size === "large") return "16px";
|
|
3207
|
+
return "16px";
|
|
3208
|
+
}};
|
|
3209
|
+
margin: 12px 6px;
|
|
3210
|
+
`;
|
|
3211
|
+
const $66c45b20958474ec$export$81d5557f9199e44d = (0, ($parcel$interopDefault($jQDcL$styledcomponents))).div`
|
|
3212
|
+
display: flex;
|
|
3213
|
+
max-width: 90%;
|
|
3214
|
+
background: rgba(45, 45, 45, 0.5);
|
|
3215
|
+
border-radius: 50px;
|
|
3216
|
+
padding: ${(props)=>{
|
|
3217
|
+
if (props.size === "small") return "6px";
|
|
3218
|
+
if (props.size === "medium") return "6px";
|
|
3219
|
+
if (props.size === "large") return "10px";
|
|
3220
|
+
return "10px";
|
|
3221
|
+
}};
|
|
3222
|
+
gap: ${(props)=>{
|
|
3223
|
+
if (props.size === "small") return "8px";
|
|
3224
|
+
if (props.size === "medium") return "12px";
|
|
3225
|
+
if (props.size === "large") return "18px";
|
|
3226
|
+
return "18px";
|
|
3227
|
+
}};
|
|
3228
|
+
gap: 18px;
|
|
3229
|
+
box-sizing: border-box;
|
|
3230
|
+
`;
|
|
3231
|
+
const $66c45b20958474ec$export$2c451b1e9e28138c = (0, ($parcel$interopDefault($jQDcL$styledcomponents))).button`
|
|
3232
|
+
display: flex;
|
|
3233
|
+
justify-content: center;
|
|
3234
|
+
align-items: center;
|
|
3235
|
+
border: none;
|
|
3236
|
+
border-radius: 50%;
|
|
3237
|
+
background-color: #2d2d2d;
|
|
3238
|
+
padding: ${(props)=>{
|
|
3239
|
+
if (props.size === "small") return "2px";
|
|
3240
|
+
if (props.size === "medium") return "6px";
|
|
3241
|
+
if (props.size === "large") return "12px";
|
|
3242
|
+
return 0;
|
|
3243
|
+
}};
|
|
3244
|
+
border: 2px solid transparent;
|
|
3245
|
+
|
|
3246
|
+
&:hover {
|
|
3247
|
+
border: 2px solid ${({ theme: theme })=>theme.primaryColor};
|
|
3248
|
+
box-sizing: border-box;
|
|
3249
|
+
}
|
|
3250
|
+
`;
|
|
3251
|
+
const $66c45b20958474ec$export$6ddfb572d7b6d164 = (0, ($parcel$interopDefault($jQDcL$styledcomponents))).div`
|
|
3252
|
+
display: flex;
|
|
3253
|
+
justify-content: center;
|
|
3254
|
+
align-items: center;
|
|
3255
|
+
width: 56px;
|
|
3256
|
+
height: 56px;
|
|
3257
|
+
background-color: #2d2d2d;
|
|
3258
|
+
border-radius: 30%;
|
|
3259
|
+
`;
|
|
3260
|
+
const $66c45b20958474ec$export$a2930b41faa750f4 = (0, ($parcel$interopDefault($jQDcL$styledcomponents))).span`
|
|
3261
|
+
font-size: 26px;
|
|
3262
|
+
font-weight: 600;
|
|
3263
|
+
line-height: 20px;
|
|
3264
|
+
color: #fff;
|
|
3265
|
+
`;
|
|
3266
|
+
const $66c45b20958474ec$export$2d75367b6e042d67 = (0, ($parcel$interopDefault($jQDcL$styledcomponents))).img`
|
|
3267
|
+
width: inherit;
|
|
3268
|
+
height: inherit;
|
|
3269
|
+
border-radius: inherit;
|
|
3270
|
+
`;
|
|
3271
|
+
const $66c45b20958474ec$export$26fe7ec9351ff761 = (0, ($parcel$interopDefault($jQDcL$styledcomponents))).img`
|
|
3272
|
+
border: 2px solid #fff;
|
|
3273
|
+
border-radius: 8px;
|
|
3274
|
+
width: 36px;
|
|
3275
|
+
height: 36px;
|
|
3276
|
+
`;
|
|
3277
|
+
const $66c45b20958474ec$export$49ac927a2aaad85 = (0, ($parcel$interopDefault($jQDcL$styledcomponents))).div`
|
|
3278
|
+
display: flex;
|
|
3279
|
+
justify-content: center;
|
|
3280
|
+
align-items: center;
|
|
3281
|
+
background-color: #2d2d2d;
|
|
3282
|
+
width: 13px;
|
|
3283
|
+
height: 13px;
|
|
3284
|
+
border-radius: 50px;
|
|
3285
|
+
color: #fff;
|
|
3286
|
+
font-size: 7px;
|
|
3287
|
+
font-weight: 700;
|
|
3288
|
+
|
|
3289
|
+
svg {
|
|
3290
|
+
width: 9px;
|
|
3291
|
+
height: 9px;
|
|
3292
|
+
}
|
|
3293
|
+
`;
|
|
3294
|
+
|
|
3295
|
+
|
|
3296
|
+
const $2c45d365ee8aa1ab$var$Blink = (color)=>(0, $jQDcL$styledcomponents.keyframes)`
|
|
3297
|
+
50% {
|
|
3298
|
+
border-color: ${color};
|
|
3299
|
+
}
|
|
3300
|
+
`;
|
|
3301
|
+
const $2c45d365ee8aa1ab$var$Flash = (0, $jQDcL$styledcomponents.keyframes)`
|
|
3302
|
+
0% {
|
|
3303
|
+
opacity: 0.9;
|
|
3304
|
+
}
|
|
3305
|
+
100% {
|
|
3306
|
+
opacity: 0;
|
|
3307
|
+
}
|
|
3308
|
+
`;
|
|
3309
|
+
const $2c45d365ee8aa1ab$export$c983850c6c9d8b0e = (0, $jQDcL$styledcomponents.keyframes)`
|
|
3310
|
+
0% {
|
|
3311
|
+
opacity: 0;
|
|
3312
|
+
}
|
|
3313
|
+
50% {
|
|
3314
|
+
opacity: 1;
|
|
3315
|
+
}
|
|
3316
|
+
100% {
|
|
3317
|
+
opacity: 0;
|
|
3318
|
+
}
|
|
3319
|
+
`;
|
|
3320
|
+
const $2c45d365ee8aa1ab$var$Resize = (0, $jQDcL$styledcomponents.keyframes)`
|
|
3321
|
+
0% {
|
|
3322
|
+
width: 200px;
|
|
2839
3323
|
height: 200px;
|
|
2840
3324
|
}
|
|
2841
3325
|
100% {
|
|
@@ -2869,8 +3353,8 @@ const $2c45d365ee8aa1ab$export$ba5a75b023bcdce2 = (0, ($parcel$interopDefault($j
|
|
|
2869
3353
|
position: relative;
|
|
2870
3354
|
width: 100%;
|
|
2871
3355
|
height: 100%;
|
|
2872
|
-
background-color: ${(props)=>props.theme.streamTileBackgroundColor};
|
|
2873
|
-
border: ${(props)=>props.border ?
|
|
3356
|
+
background-color: ${(props)=>props.border ? props.theme.streamTileBackgroundColor : "transparent"};
|
|
3357
|
+
border: 2px solid ${(props)=>props.border ? props.theme.streamTileBorderColor : "transparent"};
|
|
2874
3358
|
border-radius: 20px;
|
|
2875
3359
|
box-sizing: border-box;
|
|
2876
3360
|
|
|
@@ -2922,7 +3406,7 @@ const $2c45d365ee8aa1ab$export$3f538be5f07ec098 = (0, ($parcel$interopDefault($j
|
|
|
2922
3406
|
z-index: 50;
|
|
2923
3407
|
color: #fff;
|
|
2924
3408
|
overflow: hidden;
|
|
2925
|
-
animation: ${
|
|
3409
|
+
animation: ${(props)=>$2c45d365ee8aa1ab$var$Blink(props.theme.primaryColor)} 1.3s infinite;
|
|
2926
3410
|
`;
|
|
2927
3411
|
const $2c45d365ee8aa1ab$export$31bbfacf5347c84a = (0, ($parcel$interopDefault($jQDcL$styledcomponents))).div`
|
|
2928
3412
|
display: flex;
|
|
@@ -2947,8 +3431,8 @@ const $2c45d365ee8aa1ab$export$dfd6aceefcfce0c9 = (0, ($parcel$interopDefault($j
|
|
|
2947
3431
|
margin-top: 15px;
|
|
2948
3432
|
`;
|
|
2949
3433
|
const $2c45d365ee8aa1ab$export$a85169f132f25a9d = (0, ($parcel$interopDefault($jQDcL$styledcomponents))).button`
|
|
2950
|
-
background-color: ${(props)=>props.active ?
|
|
2951
|
-
border: 2px solid
|
|
3434
|
+
background-color: ${(props)=>props.active ? props.theme.primaryColor : "transparent"};
|
|
3435
|
+
border: 2px solid ${({ theme: theme })=>theme.primaryColor};
|
|
2952
3436
|
border-radius: 50px;
|
|
2953
3437
|
padding: 8px 18px;
|
|
2954
3438
|
color: #fff;
|
|
@@ -2957,7 +3441,7 @@ const $2c45d365ee8aa1ab$export$a85169f132f25a9d = (0, ($parcel$interopDefault($j
|
|
|
2957
3441
|
line-height: 22px;
|
|
2958
3442
|
|
|
2959
3443
|
&:hover {
|
|
2960
|
-
background-color:
|
|
3444
|
+
background-color: ${({ theme: theme })=>theme.primaryColor};
|
|
2961
3445
|
}
|
|
2962
3446
|
`;
|
|
2963
3447
|
const $2c45d365ee8aa1ab$export$e07ea3386b3cb3d9 = (0, ($parcel$interopDefault($jQDcL$styledcomponents))).button`
|
|
@@ -2990,8 +3474,9 @@ const $2c45d365ee8aa1ab$export$9e533c08c30af08 = (0, ($parcel$interopDefault($jQ
|
|
|
2990
3474
|
position: absolute;
|
|
2991
3475
|
width: 100%;
|
|
2992
3476
|
height: 100%;
|
|
2993
|
-
background-color: rgba(0, 0, 0, 0.75);
|
|
2994
|
-
|
|
3477
|
+
background-color: ${(props)=>props.show ? "rgba(0, 0, 0, 0.75)" : "transparent"};
|
|
3478
|
+
transition: all ${({ show: show })=>show ? "0.2s" : "0.66s"};
|
|
3479
|
+
z-index: ${({ show: show })=>show ? 16 : -1};
|
|
2995
3480
|
`;
|
|
2996
3481
|
const $2c45d365ee8aa1ab$export$2b501aee548bae06 = (0, ($parcel$interopDefault($jQDcL$styledcomponents))).div`
|
|
2997
3482
|
position: absolute;
|
|
@@ -3017,240 +3502,29 @@ const $2c45d365ee8aa1ab$export$26fe7ec9351ff761 = (0, ($parcel$interopDefault($j
|
|
|
3017
3502
|
width: 36px;
|
|
3018
3503
|
height: 36px;
|
|
3019
3504
|
`;
|
|
3020
|
-
|
|
3021
|
-
|
|
3022
|
-
|
|
3023
|
-
const $66c45b20958474ec$export$b302ef9d8310f71 = (0, ($parcel$interopDefault($jQDcL$styledcomponents))).div`
|
|
3024
|
-
display: flex;
|
|
3025
|
-
flex: 1;
|
|
3026
|
-
flex-direction: ${(props)=>props.direction};
|
|
3027
|
-
background-color: ${(props)=>props.theme.backgroundColor};
|
|
3028
|
-
padding: 16px 10px;
|
|
3029
|
-
position: relative;
|
|
3030
|
-
overflow: hidden;
|
|
3031
|
-
`;
|
|
3032
|
-
const $66c45b20958474ec$export$5d87c823a66d4f1a = (0, ($parcel$interopDefault($jQDcL$styledcomponents))).div`
|
|
3033
|
-
display: flex;
|
|
3034
|
-
width: ${(props)=>{
|
|
3035
|
-
if (props.audioTiles) return "100%";
|
|
3036
|
-
if (props.orientation === "landscape") {
|
|
3037
|
-
if (props.reduced) return "20%";
|
|
3038
|
-
return "80%";
|
|
3039
|
-
}
|
|
3040
|
-
return "100%";
|
|
3041
|
-
}};
|
|
3042
|
-
height: ${(props)=>{
|
|
3043
|
-
if (props.audioTiles) return "100%";
|
|
3044
|
-
if (props.orientation === "portrait" && props.reduced) return "50%";
|
|
3045
|
-
return "100%";
|
|
3046
|
-
}};
|
|
3047
|
-
flex-direction: row;
|
|
3048
|
-
flex-wrap: wrap;
|
|
3049
|
-
justify-content: center;
|
|
3050
|
-
align-content: center;
|
|
3051
|
-
gap: ${(props)=>props.audioTiles ? "48px" : "15px"};
|
|
3052
|
-
overflow: scroll;
|
|
3053
|
-
`;
|
|
3054
|
-
const $66c45b20958474ec$export$798352b46783b18d = (0, ($parcel$interopDefault($jQDcL$styledcomponents))).div`
|
|
3055
|
-
display: flex;
|
|
3056
|
-
justify-content: center;
|
|
3057
|
-
align-items: center;
|
|
3058
|
-
position: relative;
|
|
3059
|
-
background-color: ${(props)=>props.theme.streamTileBackgroundColor};
|
|
3060
|
-
border: ${(props)=>{
|
|
3061
|
-
if (props.activeBorder) return "2px solid #6967fc";
|
|
3062
|
-
else if (props.border) return `2px solid ${props.theme.streamTileBorderColor}`;
|
|
3063
|
-
return "none";
|
|
3064
|
-
}};
|
|
3065
|
-
border-radius: 20px;
|
|
3066
|
-
color: #cbcbcb;
|
|
3067
|
-
box-sizing: border-box;
|
|
3068
|
-
max-height: 100%;
|
|
3069
|
-
cursor: ${(props)=>props.cursor ? props.cursor : "default"};
|
|
3070
|
-
`;
|
|
3071
|
-
const $66c45b20958474ec$export$d574f5511ec1d79a = (0, ($parcel$interopDefault($jQDcL$styledcomponents))).video`
|
|
3072
|
-
position: absolute;
|
|
3073
|
-
top: 0;
|
|
3074
|
-
left: 0;
|
|
3075
|
-
width: 100%;
|
|
3076
|
-
height: 100%;
|
|
3077
|
-
object-fit: cover;
|
|
3078
|
-
border-radius: inherit;
|
|
3079
|
-
transform: ${(props)=>props.mirror ? "scale(-1, 1)" : "none"};
|
|
3080
|
-
z-index: ${(props)=>props.zIndex ? props.zIndex : "unset"};
|
|
3081
|
-
`;
|
|
3082
|
-
const $66c45b20958474ec$export$778ed67917f5eacf = (0, ($parcel$interopDefault($jQDcL$styledcomponents))).div`
|
|
3083
|
-
display: flex;
|
|
3084
|
-
position: absolute;
|
|
3085
|
-
top: 16px;
|
|
3086
|
-
left: 16px;
|
|
3087
|
-
gap: 8px;
|
|
3088
|
-
z-index: 15;
|
|
3089
|
-
|
|
3090
|
-
@media (max-width: 500px) {
|
|
3091
|
-
top: 8px;
|
|
3092
|
-
left: 8px;
|
|
3093
|
-
}
|
|
3094
|
-
`;
|
|
3095
|
-
const $66c45b20958474ec$export$92fe811838849d7d = (0, ($parcel$interopDefault($jQDcL$styledcomponents))).div`
|
|
3096
|
-
display: flex;
|
|
3097
|
-
justify-content: center;
|
|
3098
|
-
align-items: center;
|
|
3099
|
-
width: 26px;
|
|
3100
|
-
height: 26px;
|
|
3101
|
-
border-radius: 50%;
|
|
3102
|
-
background-color: rgba(28, 32, 36, 0.25);
|
|
3103
|
-
`;
|
|
3104
|
-
const $66c45b20958474ec$export$b430fec6b171ceb5 = (0, ($parcel$interopDefault($jQDcL$styledcomponents))).div`
|
|
3105
|
-
position: absolute;
|
|
3106
|
-
display: flex;
|
|
3107
|
-
bottom: 10px;
|
|
3108
|
-
left: 16px;
|
|
3109
|
-
color: white;
|
|
3110
|
-
font-size: 12px;
|
|
3111
|
-
right: 16px;
|
|
3112
|
-
z-index: 15;
|
|
3113
|
-
|
|
3114
|
-
p {
|
|
3115
|
-
display: inline-block;
|
|
3116
|
-
max-width: 100%;
|
|
3117
|
-
background: rgba(27, 33, 39, 0.3);
|
|
3118
|
-
border-radius: 10px;
|
|
3119
|
-
padding: 10px;
|
|
3120
|
-
margin: 0;
|
|
3121
|
-
white-space: nowrap;
|
|
3122
|
-
overflow: hidden;
|
|
3123
|
-
text-overflow: ellipsis;
|
|
3124
|
-
box-sizing: border-box;
|
|
3125
|
-
}
|
|
3126
|
-
|
|
3127
|
-
@media (max-width: 500px) {
|
|
3128
|
-
bottom: 7.5px;
|
|
3129
|
-
left: 8px;
|
|
3130
|
-
}
|
|
3131
|
-
`;
|
|
3132
|
-
const $66c45b20958474ec$export$f217faec90120a0c = (0, ($parcel$interopDefault($jQDcL$styledcomponents))).div`
|
|
3133
|
-
display: flex;
|
|
3134
|
-
justify-content: center;
|
|
3135
|
-
align-items: center;
|
|
3136
|
-
flex-direction: column;
|
|
3137
|
-
width: 100%;
|
|
3138
|
-
height: 100%;
|
|
3139
|
-
border-radius: inherit;
|
|
3140
|
-
z-index: 10;
|
|
3141
|
-
background: ${(props)=>props.streaming ? "linear-gradient(0deg, rgba(0, 0, 0, 0.8), rgba(0, 0, 0, 0.8))" : "none"};
|
|
3142
|
-
`;
|
|
3143
|
-
const $66c45b20958474ec$export$df42e007689062b0 = (0, ($parcel$interopDefault($jQDcL$styledcomponents))).p`
|
|
3144
|
-
text-align: center;
|
|
3145
|
-
font-weight: 600;
|
|
3146
|
-
font-size: ${(props)=>{
|
|
3147
|
-
if (props.size === "small") return "12px";
|
|
3148
|
-
if (props.size === "medium") return "14px";
|
|
3149
|
-
if (props.size === "large") return "16px";
|
|
3150
|
-
return "16px";
|
|
3151
|
-
}};
|
|
3152
|
-
margin: 12px 6px;
|
|
3153
|
-
`;
|
|
3154
|
-
const $66c45b20958474ec$export$81d5557f9199e44d = (0, ($parcel$interopDefault($jQDcL$styledcomponents))).div`
|
|
3155
|
-
display: flex;
|
|
3156
|
-
max-width: 90%;
|
|
3157
|
-
background: rgba(45, 45, 45, 0.5);
|
|
3158
|
-
border-radius: 50px;
|
|
3159
|
-
padding: ${(props)=>{
|
|
3160
|
-
if (props.size === "small") return "6px";
|
|
3161
|
-
if (props.size === "medium") return "6px";
|
|
3162
|
-
if (props.size === "large") return "10px";
|
|
3163
|
-
return "10px";
|
|
3164
|
-
}};
|
|
3165
|
-
gap: ${(props)=>{
|
|
3166
|
-
if (props.size === "small") return "8px";
|
|
3167
|
-
if (props.size === "medium") return "12px";
|
|
3168
|
-
if (props.size === "large") return "18px";
|
|
3169
|
-
return "18px";
|
|
3170
|
-
}};
|
|
3171
|
-
gap: 18px;
|
|
3172
|
-
box-sizing: border-box;
|
|
3173
|
-
`;
|
|
3174
|
-
const $66c45b20958474ec$export$2c451b1e9e28138c = (0, ($parcel$interopDefault($jQDcL$styledcomponents))).button`
|
|
3175
|
-
display: flex;
|
|
3176
|
-
justify-content: center;
|
|
3177
|
-
align-items: center;
|
|
3178
|
-
border: none;
|
|
3179
|
-
border-radius: 50%;
|
|
3180
|
-
background-color: #2d2d2d;
|
|
3181
|
-
padding: ${(props)=>{
|
|
3182
|
-
if (props.size === "small") return "2px";
|
|
3183
|
-
if (props.size === "medium") return "6px";
|
|
3184
|
-
if (props.size === "large") return "12px";
|
|
3185
|
-
return 0;
|
|
3186
|
-
}};
|
|
3187
|
-
border: 2px solid transparent;
|
|
3188
|
-
|
|
3189
|
-
&:hover {
|
|
3190
|
-
border: 2px solid #6967fc;
|
|
3191
|
-
box-sizing: border-box;
|
|
3192
|
-
}
|
|
3193
|
-
`;
|
|
3194
|
-
const $66c45b20958474ec$export$6ddfb572d7b6d164 = (0, ($parcel$interopDefault($jQDcL$styledcomponents))).div`
|
|
3195
|
-
display: flex;
|
|
3196
|
-
justify-content: center;
|
|
3197
|
-
align-items: center;
|
|
3198
|
-
width: 56px;
|
|
3199
|
-
height: 56px;
|
|
3200
|
-
background-color: #2d2d2d;
|
|
3201
|
-
border-radius: 30%;
|
|
3202
|
-
`;
|
|
3203
|
-
const $66c45b20958474ec$export$a2930b41faa750f4 = (0, ($parcel$interopDefault($jQDcL$styledcomponents))).span`
|
|
3204
|
-
font-size: 26px;
|
|
3205
|
-
font-weight: 600;
|
|
3206
|
-
line-height: 20px;
|
|
3207
|
-
color: #fff;
|
|
3208
|
-
`;
|
|
3209
|
-
const $66c45b20958474ec$export$2d75367b6e042d67 = (0, ($parcel$interopDefault($jQDcL$styledcomponents))).img`
|
|
3210
|
-
width: inherit;
|
|
3211
|
-
height: inherit;
|
|
3212
|
-
border-radius: inherit;
|
|
3213
|
-
`;
|
|
3214
|
-
const $66c45b20958474ec$export$26fe7ec9351ff761 = (0, ($parcel$interopDefault($jQDcL$styledcomponents))).img`
|
|
3215
|
-
border: 2px solid #fff;
|
|
3216
|
-
border-radius: 8px;
|
|
3217
|
-
width: 36px;
|
|
3218
|
-
height: 36px;
|
|
3219
|
-
`;
|
|
3220
|
-
const $66c45b20958474ec$export$49ac927a2aaad85 = (0, ($parcel$interopDefault($jQDcL$styledcomponents))).div`
|
|
3221
|
-
display: flex;
|
|
3222
|
-
justify-content: center;
|
|
3223
|
-
align-items: center;
|
|
3224
|
-
background-color: #2d2d2d;
|
|
3225
|
-
width: 13px;
|
|
3226
|
-
height: 13px;
|
|
3227
|
-
border-radius: 50px;
|
|
3228
|
-
color: #fff;
|
|
3229
|
-
font-size: 7px;
|
|
3505
|
+
const $2c45d365ee8aa1ab$export$500c3c5544c37412 = (0, ($parcel$interopDefault($jQDcL$styledcomponents)))((0, $66c45b20958474ec$export$a878cdfb933a1421))`
|
|
3506
|
+
padding: 5px 10px;
|
|
3507
|
+
font-size: 11px;
|
|
3230
3508
|
font-weight: 700;
|
|
3231
|
-
|
|
3232
|
-
svg {
|
|
3233
|
-
width: 9px;
|
|
3234
|
-
height: 9px;
|
|
3235
|
-
}
|
|
3509
|
+
line-height: 13px;
|
|
3236
3510
|
`;
|
|
3237
3511
|
|
|
3238
3512
|
|
|
3513
|
+
|
|
3239
3514
|
const $07e749066c746c7c$var$getRequestButtonSize = (containerWidth)=>{
|
|
3240
3515
|
if (containerWidth < 200) return "small";
|
|
3241
3516
|
if (containerWidth < 300) return "medium";
|
|
3242
3517
|
return "large";
|
|
3243
3518
|
};
|
|
3244
3519
|
const $07e749066c746c7c$var$StreamTile = ({ stream: stream , width: width = 0 , height: height = 0 })=>{
|
|
3245
|
-
const audioElementRef = (0, $jQDcL$react.useRef)(null);
|
|
3246
3520
|
const videoElementRef = (0, $jQDcL$react.useRef)(null);
|
|
3247
3521
|
const [hover, setHover] = (0, $jQDcL$react.useState)(false);
|
|
3248
3522
|
const [requestingDevice, setRequestingDevice] = (0, $jQDcL$react.useState)(null);
|
|
3249
3523
|
const [flashAnimation, setFlashAnimation] = (0, $jQDcL$react.useState)(false);
|
|
3250
3524
|
const requestingDeviceTimeoutRef = (0, $jQDcL$react.useRef)(null);
|
|
3251
|
-
const {
|
|
3525
|
+
const { selfPeerId: selfPeerId } = (0, $jQDcL$react.useContext)((0, $8b39f32976a7698a$export$2e2bcd8739ae039));
|
|
3252
3526
|
const { highlightedTile: highlightedTile } = (0, $3f6e908c45fcc5b3$export$b5633a7cfbe42d9f)();
|
|
3253
|
-
const isSharingScreen = highlightedTile?.type === "screenshare" && highlightedTile.
|
|
3527
|
+
const isSharingScreen = highlightedTile?.type === "screenshare" && highlightedTile.peerId === selfPeerId;
|
|
3254
3528
|
const microphoneActive = stream.microphone && !stream.muted;
|
|
3255
3529
|
const showRequestDevice = !requestingDevice && hover && !highlightedTile && (!microphoneActive || !stream.webcam);
|
|
3256
3530
|
const tileWidth = `${width}px`;
|
|
@@ -3270,15 +3544,7 @@ const $07e749066c746c7c$var$StreamTile = ({ stream: stream , width: width = 0 ,
|
|
|
3270
3544
|
const requestScreen = ()=>{
|
|
3271
3545
|
(0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).requestPeerDevice(stream.id, "screen");
|
|
3272
3546
|
setRequestingDevice("screen");
|
|
3273
|
-
};
|
|
3274
|
-
(0, $jQDcL$react.useEffect)(()=>{
|
|
3275
|
-
if (stream.microphone && audioElementRef.current) (0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).requestVoice({
|
|
3276
|
-
consumerId: stream.microphone,
|
|
3277
|
-
element: audioElementRef.current
|
|
3278
|
-
});
|
|
3279
|
-
}, [
|
|
3280
|
-
stream.microphone
|
|
3281
|
-
]);
|
|
3547
|
+
};
|
|
3282
3548
|
(0, $jQDcL$react.useEffect)(()=>{
|
|
3283
3549
|
if (!videoElementRef.current) throw new Error("videoElementRef not available");
|
|
3284
3550
|
if (stream.webcam && videoElementRef.current) (0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).requestVideo({
|
|
@@ -3320,9 +3586,9 @@ const $07e749066c746c7c$var$StreamTile = ({ stream: stream , width: width = 0 ,
|
|
|
3320
3586
|
}
|
|
3321
3587
|
}
|
|
3322
3588
|
};
|
|
3323
|
-
|
|
3589
|
+
(0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).addEventListener("requestDeviceResult", onRequestDeviceResult);
|
|
3324
3590
|
return ()=>{
|
|
3325
|
-
|
|
3591
|
+
(0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).removeEventListener("requestDeviceResult", onRequestDeviceResult);
|
|
3326
3592
|
};
|
|
3327
3593
|
}, [
|
|
3328
3594
|
stream.id,
|
|
@@ -3331,52 +3597,17 @@ const $07e749066c746c7c$var$StreamTile = ({ stream: stream , width: width = 0 ,
|
|
|
3331
3597
|
(0, $jQDcL$react.useEffect)(()=>{
|
|
3332
3598
|
const onCustomMessage = async (event)=>{
|
|
3333
3599
|
const { peerId: peerId } = event.detail;
|
|
3334
|
-
const { type: type
|
|
3335
|
-
if (type === "snapshot" && peerId === stream.id)
|
|
3336
|
-
setFlashAnimation(true);
|
|
3337
|
-
const statusIcon = stream.displayName ? /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)((0, $66c45b20958474ec$export$49ac927a2aaad85), {
|
|
3338
|
-
children: stream.displayName.slice(0, 1).toUpperCase()
|
|
3339
|
-
}) : /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)((0, $66c45b20958474ec$export$49ac927a2aaad85), {
|
|
3340
|
-
children: /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)((0, $0319693440f03062$export$2e2bcd8739ae039), {})
|
|
3341
|
-
});
|
|
3342
|
-
(0, $84c6cbcbb594d072$export$3a57e165650c636f)("Snapshot shared.", {
|
|
3343
|
-
width: "272px",
|
|
3344
|
-
icon: /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)((0, $66c45b20958474ec$export$26fe7ec9351ff761), {
|
|
3345
|
-
src: imageSrc
|
|
3346
|
-
}),
|
|
3347
|
-
messageStyle: {
|
|
3348
|
-
fontWeight: 600,
|
|
3349
|
-
fontSize: "16px"
|
|
3350
|
-
},
|
|
3351
|
-
button: {
|
|
3352
|
-
text: "Open",
|
|
3353
|
-
action: ({ close: close })=>{
|
|
3354
|
-
window.open(imageSrc, "_blank");
|
|
3355
|
-
close();
|
|
3356
|
-
}
|
|
3357
|
-
},
|
|
3358
|
-
status: {
|
|
3359
|
-
text: "From",
|
|
3360
|
-
boldText: stream.displayName || "User",
|
|
3361
|
-
icon: statusIcon
|
|
3362
|
-
},
|
|
3363
|
-
duration: 10000
|
|
3364
|
-
});
|
|
3365
|
-
}
|
|
3600
|
+
const { type: type } = event.detail.event;
|
|
3601
|
+
if (type === "snapshot" && peerId === stream.id) setFlashAnimation(true);
|
|
3366
3602
|
};
|
|
3367
|
-
|
|
3603
|
+
(0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).addEventListener("customMessage", onCustomMessage);
|
|
3368
3604
|
return ()=>{
|
|
3369
|
-
|
|
3605
|
+
(0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).removeEventListener("customMessage", onCustomMessage);
|
|
3370
3606
|
};
|
|
3371
3607
|
}, [
|
|
3372
3608
|
stream.id,
|
|
3373
3609
|
stream.displayName
|
|
3374
3610
|
]);
|
|
3375
|
-
(0, $jQDcL$react.useEffect)(()=>{
|
|
3376
|
-
if (userInteractionTriggered && audioElementRef.current?.paused) audioElementRef.current.play();
|
|
3377
|
-
}, [
|
|
3378
|
-
userInteractionTriggered
|
|
3379
|
-
]);
|
|
3380
3611
|
return /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsxs)((0, $66c45b20958474ec$export$798352b46783b18d), {
|
|
3381
3612
|
onMouseEnter: onMouseEnter,
|
|
3382
3613
|
onMouseLeave: onMouseLeave,
|
|
@@ -3389,10 +3620,6 @@ const $07e749066c746c7c$var$StreamTile = ({ stream: stream , width: width = 0 ,
|
|
|
3389
3620
|
cursor: showRequestDevice ? "pointer" : "default",
|
|
3390
3621
|
"data-peer-id": stream.id,
|
|
3391
3622
|
children: [
|
|
3392
|
-
/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)("audio", {
|
|
3393
|
-
ref: audioElementRef,
|
|
3394
|
-
autoPlay: true
|
|
3395
|
-
}),
|
|
3396
3623
|
/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)((0, $66c45b20958474ec$export$d574f5511ec1d79a), {
|
|
3397
3624
|
ref: videoElementRef,
|
|
3398
3625
|
style: {
|
|
@@ -3468,10 +3695,17 @@ const $07e749066c746c7c$var$StreamTile = ({ stream: stream , width: width = 0 ,
|
|
|
3468
3695
|
]
|
|
3469
3696
|
})
|
|
3470
3697
|
}),
|
|
3471
|
-
!showRequestDevice &&
|
|
3472
|
-
children:
|
|
3473
|
-
|
|
3474
|
-
|
|
3698
|
+
!showRequestDevice && /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsxs)((0, $66c45b20958474ec$export$a878cdfb933a1421), {
|
|
3699
|
+
children: [
|
|
3700
|
+
/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)((0, $66c45b20958474ec$export$f6525863ef5a71a9), {
|
|
3701
|
+
children: stream.displayName ? /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)("span", {
|
|
3702
|
+
children: stream.displayName.slice(0, 1).toUpperCase()
|
|
3703
|
+
}) : /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)((0, $0319693440f03062$export$2e2bcd8739ae039), {})
|
|
3704
|
+
}),
|
|
3705
|
+
/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)((0, $66c45b20958474ec$export$b430fec6b171ceb5), {
|
|
3706
|
+
children: stream.displayName || "User"
|
|
3707
|
+
})
|
|
3708
|
+
]
|
|
3475
3709
|
})
|
|
3476
3710
|
]
|
|
3477
3711
|
});
|
|
@@ -3535,33 +3769,11 @@ const $52dcfd8b6b2d6e61$export$a87ec69641e9884 = (0, ($parcel$interopDefault($jQ
|
|
|
3535
3769
|
|
|
3536
3770
|
|
|
3537
3771
|
const $dc81c0e96fbbb967$var$AudioTile = ({ stream: stream })=>{
|
|
3538
|
-
const
|
|
3539
|
-
const
|
|
3540
|
-
const
|
|
3541
|
-
if (audioElementRef.current?.paused) audioElementRef.current.play();
|
|
3542
|
-
};
|
|
3543
|
-
(0, $jQDcL$react.useEffect)(()=>{
|
|
3544
|
-
if (stream.microphone && audioElementRef.current && stream.microphone !== "self") (0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).requestVoice({
|
|
3545
|
-
consumerId: stream.microphone,
|
|
3546
|
-
element: audioElementRef.current
|
|
3547
|
-
});
|
|
3548
|
-
}, [
|
|
3549
|
-
stream.microphone
|
|
3550
|
-
]);
|
|
3551
|
-
(0, $jQDcL$react.useEffect)(()=>{
|
|
3552
|
-
if (stream.id !== "self") {
|
|
3553
|
-
window.addEventListener("microphoneEnabled", onMicrophoneEnabled);
|
|
3554
|
-
return ()=>window.removeEventListener("microphoneEnabled", onMicrophoneEnabled);
|
|
3555
|
-
}
|
|
3556
|
-
}, [
|
|
3557
|
-
stream.id
|
|
3558
|
-
]);
|
|
3772
|
+
const { selfPeerId: selfPeerId } = (0, $jQDcL$react.useContext)((0, $8b39f32976a7698a$export$2e2bcd8739ae039));
|
|
3773
|
+
const isSelf = selfPeerId === stream.id;
|
|
3774
|
+
const isMicrophoneActive = (stream.microphone || isSelf) && !stream.muted;
|
|
3559
3775
|
return /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsxs)((0, $52dcfd8b6b2d6e61$export$d669f73461f8cadf), {
|
|
3560
3776
|
children: [
|
|
3561
|
-
/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)("audio", {
|
|
3562
|
-
ref: audioElementRef,
|
|
3563
|
-
autoPlay: true
|
|
3564
|
-
}),
|
|
3565
3777
|
/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsxs)((0, $52dcfd8b6b2d6e61$export$235e35bd03f702fb), {
|
|
3566
3778
|
children: [
|
|
3567
3779
|
stream.displayName && /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)((0, $66c45b20958474ec$export$a2930b41faa750f4), {
|
|
@@ -3607,18 +3819,15 @@ var $c19f00532fd0c23c$export$2e2bcd8739ae039 = $c19f00532fd0c23c$var$Reduce;
|
|
|
3607
3819
|
|
|
3608
3820
|
|
|
3609
3821
|
|
|
3610
|
-
|
|
3611
|
-
|
|
3612
|
-
|
|
3613
|
-
|
|
3614
|
-
const $6f36db3b1217f099$var$Cross = ({ width: width = 15 , height: height = 15 })=>/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)("svg", {
|
|
3615
|
-
width: width,
|
|
3616
|
-
height: height,
|
|
3617
|
-
viewBox: "0 0 15 15",
|
|
3822
|
+
const $6f36db3b1217f099$var$Cross = ()=>/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)("svg", {
|
|
3823
|
+
width: "24",
|
|
3824
|
+
height: "24",
|
|
3825
|
+
viewBox: "0 0 24 24",
|
|
3618
3826
|
fill: "none",
|
|
3619
3827
|
xmlns: "http://www.w3.org/2000/svg",
|
|
3620
|
-
children: /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)(
|
|
3621
|
-
d: "
|
|
3828
|
+
children: /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)("path", {
|
|
3829
|
+
d: "M7.21 7.21a.714.714 0 0 1 1.011 0l3.78 3.78 3.778-3.78a.716.716 0 0 1 1.012 1.011l-3.781 3.78 3.78 3.778a.716.716 0 0 1-.779 1.167.716.716 0 0 1-.232-.155L12 13.01l-3.779 3.78a.716.716 0 0 1-1.011-1.01L10.99 12 7.21 8.221a.714.714 0 0 1 0-1.011Z",
|
|
3830
|
+
fill: "#fff"
|
|
3622
3831
|
})
|
|
3623
3832
|
});
|
|
3624
3833
|
var $6f36db3b1217f099$export$2e2bcd8739ae039 = $6f36db3b1217f099$var$Cross;
|
|
@@ -3950,7 +4159,7 @@ var $fdb92de69267f341$export$2e2bcd8739ae039 = $fdb92de69267f341$var$MediaSessio
|
|
|
3950
4159
|
|
|
3951
4160
|
|
|
3952
4161
|
const $8393b5c887e16c8c$var$minimumTileWidth = 126;
|
|
3953
|
-
const $8393b5c887e16c8c$var$maximumTileWidth =
|
|
4162
|
+
const $8393b5c887e16c8c$var$maximumTileWidth = 150;
|
|
3954
4163
|
const $8393b5c887e16c8c$var$SelfStreamTile = ({ isSomeonePresenting: isSomeonePresenting , width: width , height: height })=>{
|
|
3955
4164
|
const [extended, setExtended] = (0, $jQDcL$react.useState)(false);
|
|
3956
4165
|
const [zoom, setZoom] = (0, $jQDcL$react.useState)(false);
|
|
@@ -3964,7 +4173,7 @@ const $8393b5c887e16c8c$var$SelfStreamTile = ({ isSomeonePresenting: isSomeonePr
|
|
|
3964
4173
|
const SelfTileRef = (0, $jQDcL$react.useRef)(null);
|
|
3965
4174
|
const { videosContainerRef: videosContainerRef , remoteTilesContainerRef: remoteTilesContainerRef , selfDisplayName: selfDisplayName , muted: muted , streaming: streaming , orientation: orientation , } = (0, $jQDcL$react.useContext)((0, $8b39f32976a7698a$export$2e2bcd8739ae039));
|
|
3966
4175
|
const { streams: streams } = (0, $3f6e908c45fcc5b3$export$b5633a7cfbe42d9f)();
|
|
3967
|
-
const [containerWidth, containerHeight] = (0, $
|
|
4176
|
+
const [containerWidth, containerHeight] = (0, $56e1e7a85d8bf4bb$export$2b86bedf890eab8)(videosContainerRef.current);
|
|
3968
4177
|
const isAlone = streams.length < 1;
|
|
3969
4178
|
const cursor = streaming && !isAlone && !extended ? "pointer" : "default";
|
|
3970
4179
|
let tileSize = "100%";
|
|
@@ -3979,7 +4188,8 @@ const $8393b5c887e16c8c$var$SelfStreamTile = ({ isSomeonePresenting: isSomeonePr
|
|
|
3979
4188
|
});
|
|
3980
4189
|
tileSize = `${computedWidth}px`;
|
|
3981
4190
|
}
|
|
3982
|
-
const
|
|
4191
|
+
const onLocalVideoChange = (event)=>{
|
|
4192
|
+
if (!event.detail?.camera?.device) return;
|
|
3983
4193
|
if (!videoElementRef.current) throw new Error("videoElementRef not available");
|
|
3984
4194
|
const { facingMode: newFacingMode } = (0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).requestLocalVideo(videoElementRef.current);
|
|
3985
4195
|
setFacingMode(newFacingMode);
|
|
@@ -4044,6 +4254,7 @@ const $8393b5c887e16c8c$var$SelfStreamTile = ({ isSomeonePresenting: isSomeonePr
|
|
|
4044
4254
|
if (SelfTileRef.current) (0, $4ee7c4b0b3646a08$export$ab7d69e250642927)({
|
|
4045
4255
|
element: SelfTileRef.current
|
|
4046
4256
|
});
|
|
4257
|
+
if (deviceType === "screen") return;
|
|
4047
4258
|
setDeviceRequest({
|
|
4048
4259
|
device: deviceType,
|
|
4049
4260
|
requesterId: peerId
|
|
@@ -4100,11 +4311,11 @@ const $8393b5c887e16c8c$var$SelfStreamTile = ({ isSomeonePresenting: isSomeonePr
|
|
|
4100
4311
|
extended
|
|
4101
4312
|
]);
|
|
4102
4313
|
(0, $jQDcL$react.useEffect)(()=>{
|
|
4103
|
-
|
|
4104
|
-
|
|
4314
|
+
(0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).addEventListener("localVideoChange", onLocalVideoChange);
|
|
4315
|
+
(0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).addEventListener("requestDevice", onDeviceRequest);
|
|
4105
4316
|
return ()=>{
|
|
4106
|
-
|
|
4107
|
-
|
|
4317
|
+
(0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).removeEventListener("localVideoChange", onLocalVideoChange);
|
|
4318
|
+
(0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).removeEventListener("requestDevice", onDeviceRequest);
|
|
4108
4319
|
};
|
|
4109
4320
|
}, []);
|
|
4110
4321
|
const content = /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsxs)((0, $jQDcL$reactjsxruntime.Fragment), {
|
|
@@ -4148,8 +4359,8 @@ const $8393b5c887e16c8c$var$SelfStreamTile = ({ isSomeonePresenting: isSomeonePr
|
|
|
4148
4359
|
]
|
|
4149
4360
|
})
|
|
4150
4361
|
}),
|
|
4151
|
-
!extended && /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)((0, $
|
|
4152
|
-
children: /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)("
|
|
4362
|
+
!extended && /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)((0, $2c45d365ee8aa1ab$export$500c3c5544c37412), {
|
|
4363
|
+
children: /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)("span", {
|
|
4153
4364
|
children: "You"
|
|
4154
4365
|
})
|
|
4155
4366
|
}),
|
|
@@ -4180,10 +4391,7 @@ const $8393b5c887e16c8c$var$SelfStreamTile = ({ isSomeonePresenting: isSomeonePr
|
|
|
4180
4391
|
onClick: onZoomClick,
|
|
4181
4392
|
children: [
|
|
4182
4393
|
zoom ? "2" : "1",
|
|
4183
|
-
/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)((0, $6f36db3b1217f099$export$2e2bcd8739ae039), {
|
|
4184
|
-
width: 8,
|
|
4185
|
-
height: 8
|
|
4186
|
-
})
|
|
4394
|
+
/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)((0, $6f36db3b1217f099$export$2e2bcd8739ae039), {})
|
|
4187
4395
|
]
|
|
4188
4396
|
}),
|
|
4189
4397
|
/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)("span", {
|
|
@@ -4229,7 +4437,9 @@ const $8393b5c887e16c8c$var$SelfStreamTile = ({ isSomeonePresenting: isSomeonePr
|
|
|
4229
4437
|
})
|
|
4230
4438
|
]
|
|
4231
4439
|
}),
|
|
4232
|
-
|
|
4440
|
+
/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)((0, $2c45d365ee8aa1ab$export$9e533c08c30af08), {
|
|
4441
|
+
show: extended
|
|
4442
|
+
})
|
|
4233
4443
|
]
|
|
4234
4444
|
});
|
|
4235
4445
|
};
|
|
@@ -4244,6 +4454,7 @@ var $8393b5c887e16c8c$export$2e2bcd8739ae039 = $8393b5c887e16c8c$var$SelfStreamT
|
|
|
4244
4454
|
|
|
4245
4455
|
|
|
4246
4456
|
|
|
4457
|
+
|
|
4247
4458
|
const $90182c377f240da9$export$690f2758eb588c46 = (0, ($parcel$interopDefault($jQDcL$styledcomponents))).div`
|
|
4248
4459
|
display: flex;
|
|
4249
4460
|
justify-content: center;
|
|
@@ -4261,25 +4472,27 @@ const $90182c377f240da9$export$2ccbea1af5dfeb73 = (0, ($parcel$interopDefault($j
|
|
|
4261
4472
|
`;
|
|
4262
4473
|
|
|
4263
4474
|
|
|
4264
|
-
const $6e25dd2638faaf71$var$
|
|
4475
|
+
const $6e25dd2638faaf71$var$ScreenshareTile = (tile)=>{
|
|
4476
|
+
const { selfPeerId: selfPeerId } = (0, $jQDcL$react.useContext)((0, $8b39f32976a7698a$export$2e2bcd8739ae039));
|
|
4265
4477
|
const videoElementRef = (0, $jQDcL$react.useRef)(null);
|
|
4478
|
+
const isSelf = tile.peerId === selfPeerId;
|
|
4266
4479
|
(0, $jQDcL$react.useEffect)(()=>{
|
|
4267
|
-
if (data.consumerId && videoElementRef.current) (0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).requestVideo({
|
|
4268
|
-
consumerId: data.consumerId,
|
|
4480
|
+
if (tile.data.consumerId && videoElementRef.current) (0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).requestVideo({
|
|
4481
|
+
consumerId: tile.data.consumerId,
|
|
4269
4482
|
element: videoElementRef.current
|
|
4270
4483
|
});
|
|
4271
4484
|
}, [
|
|
4272
|
-
data.consumerId
|
|
4485
|
+
tile.data.consumerId
|
|
4273
4486
|
]);
|
|
4274
4487
|
(0, $jQDcL$react.useEffect)(()=>{
|
|
4275
|
-
if (
|
|
4488
|
+
if (isSelf && videoElementRef.current) {
|
|
4276
4489
|
(0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).requestLocalScreenshare(videoElementRef.current);
|
|
4277
4490
|
return ()=>{
|
|
4278
4491
|
(0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).disableScreenshare();
|
|
4279
4492
|
};
|
|
4280
4493
|
}
|
|
4281
4494
|
}, [
|
|
4282
|
-
|
|
4495
|
+
isSelf
|
|
4283
4496
|
]);
|
|
4284
4497
|
return /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)((0, $90182c377f240da9$export$690f2758eb588c46), {
|
|
4285
4498
|
children: /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)((0, $90182c377f240da9$export$2ccbea1af5dfeb73), {
|
|
@@ -4290,7 +4503,7 @@ const $6e25dd2638faaf71$var$Screenshare = ({ data: data })=>{
|
|
|
4290
4503
|
})
|
|
4291
4504
|
});
|
|
4292
4505
|
};
|
|
4293
|
-
var $6e25dd2638faaf71$export$2e2bcd8739ae039 = $6e25dd2638faaf71$var$
|
|
4506
|
+
var $6e25dd2638faaf71$export$2e2bcd8739ae039 = $6e25dd2638faaf71$var$ScreenshareTile;
|
|
4294
4507
|
|
|
4295
4508
|
|
|
4296
4509
|
|
|
@@ -4306,6 +4519,148 @@ const $81369fe5a359bb1e$export$2cb99e4be0dc4646 = (url)=>new Promise((resolve, r
|
|
|
4306
4519
|
|
|
4307
4520
|
|
|
4308
4521
|
|
|
4522
|
+
|
|
4523
|
+
|
|
4524
|
+
|
|
4525
|
+
|
|
4526
|
+
|
|
4527
|
+
|
|
4528
|
+
const $d98095a4855ffc64$export$eb5bbbfc393ab8ac = (0, ($parcel$interopDefault($jQDcL$styledcomponents))).div`
|
|
4529
|
+
max-width: 100%;
|
|
4530
|
+
margin-top: 60px;
|
|
4531
|
+
margin-bottom: 20px;
|
|
4532
|
+
padding: 0 25px;
|
|
4533
|
+
box-sizing: border-box;
|
|
4534
|
+
`;
|
|
4535
|
+
const $d98095a4855ffc64$export$ebce8992dc3bd82 = (0, ($parcel$interopDefault($jQDcL$styledcomponents))).div`
|
|
4536
|
+
font-size: 20px;
|
|
4537
|
+
font-weight: 700;
|
|
4538
|
+
margin-bottom: 30px;
|
|
4539
|
+
`;
|
|
4540
|
+
const $d98095a4855ffc64$export$e6c0b06d6e2dd9e3 = (0, ($parcel$interopDefault($jQDcL$styledcomponents))).div`
|
|
4541
|
+
display: flex;
|
|
4542
|
+
flex-direction: column;
|
|
4543
|
+
gap: 17px;
|
|
4544
|
+
`;
|
|
4545
|
+
const $d98095a4855ffc64$export$8503ce930eaa5c44 = (0, ($parcel$interopDefault($jQDcL$styledcomponents))).img`
|
|
4546
|
+
border-radius: 8px;
|
|
4547
|
+
width: 36px;
|
|
4548
|
+
height: 36px;
|
|
4549
|
+
`;
|
|
4550
|
+
const $d98095a4855ffc64$export$a300a79023cea761 = (0, ($parcel$interopDefault($jQDcL$styledcomponents))).div`
|
|
4551
|
+
display: flex;
|
|
4552
|
+
justify-content: center;
|
|
4553
|
+
align-items: center;
|
|
4554
|
+
background-color: #2d2d2d;
|
|
4555
|
+
width: 100%;
|
|
4556
|
+
border-radius: 50px;
|
|
4557
|
+
color: #fff;
|
|
4558
|
+
font-size: 7px;
|
|
4559
|
+
font-weight: 700;
|
|
4560
|
+
|
|
4561
|
+
svg {
|
|
4562
|
+
width: 8px;
|
|
4563
|
+
height: 8px;
|
|
4564
|
+
}
|
|
4565
|
+
`;
|
|
4566
|
+
|
|
4567
|
+
|
|
4568
|
+
const $65bf10a117819168$export$e9785ae652b3a722 = (item)=>{
|
|
4569
|
+
const { roomId: roomId } = (0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).getState();
|
|
4570
|
+
if (roomId) {
|
|
4571
|
+
const key = `stream_share_history_${roomId}`;
|
|
4572
|
+
try {
|
|
4573
|
+
const storedHistory = localStorage.getItem(key);
|
|
4574
|
+
if (storedHistory) {
|
|
4575
|
+
const parsedStoredHistory = JSON.parse(storedHistory);
|
|
4576
|
+
parsedStoredHistory.push({
|
|
4577
|
+
...item,
|
|
4578
|
+
id: parsedStoredHistory.length
|
|
4579
|
+
});
|
|
4580
|
+
const stringifiedHistory = JSON.stringify(parsedStoredHistory);
|
|
4581
|
+
localStorage.setItem(key, stringifiedHistory);
|
|
4582
|
+
} else {
|
|
4583
|
+
const stringifiedHistory = JSON.stringify([
|
|
4584
|
+
{
|
|
4585
|
+
...item,
|
|
4586
|
+
id: 0
|
|
4587
|
+
},
|
|
4588
|
+
]);
|
|
4589
|
+
localStorage.setItem(key, stringifiedHistory);
|
|
4590
|
+
}
|
|
4591
|
+
} catch (localStorageError) {
|
|
4592
|
+
console.warn(localStorageError);
|
|
4593
|
+
}
|
|
4594
|
+
} else console.warn("Undefined room ID");
|
|
4595
|
+
};
|
|
4596
|
+
const $65bf10a117819168$export$ad5f39c592532e2d = ()=>{
|
|
4597
|
+
const [history, setHistory] = (0, $jQDcL$react.useState)([]);
|
|
4598
|
+
(0, $jQDcL$react.useEffect)(()=>{
|
|
4599
|
+
try {
|
|
4600
|
+
const { roomId: roomId } = (0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).getState();
|
|
4601
|
+
const storedHistory = localStorage.getItem(`stream_share_history_${roomId}`);
|
|
4602
|
+
if (storedHistory) {
|
|
4603
|
+
const parsedStoredHistory = JSON.parse(storedHistory);
|
|
4604
|
+
setHistory(parsedStoredHistory);
|
|
4605
|
+
}
|
|
4606
|
+
} catch (localStorageError) {
|
|
4607
|
+
console.warn(localStorageError);
|
|
4608
|
+
}
|
|
4609
|
+
}, []);
|
|
4610
|
+
if (history.length < 1) return null;
|
|
4611
|
+
return /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsxs)((0, $d98095a4855ffc64$export$eb5bbbfc393ab8ac), {
|
|
4612
|
+
children: [
|
|
4613
|
+
/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)((0, $d98095a4855ffc64$export$ebce8992dc3bd82), {
|
|
4614
|
+
children: "Shared with you"
|
|
4615
|
+
}),
|
|
4616
|
+
/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)((0, $d98095a4855ffc64$export$e6c0b06d6e2dd9e3), {
|
|
4617
|
+
children: history.map((item)=>{
|
|
4618
|
+
let itemStatus = undefined;
|
|
4619
|
+
if (item.statusText) {
|
|
4620
|
+
itemStatus = {
|
|
4621
|
+
text: "From",
|
|
4622
|
+
boldText: item.statusText
|
|
4623
|
+
};
|
|
4624
|
+
if (item.statusIconUrl) itemStatus.icon = item.statusIconUrl;
|
|
4625
|
+
if (item.statusIconLetter) itemStatus.icon = /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)((0, $d98095a4855ffc64$export$a300a79023cea761), {
|
|
4626
|
+
children: item.statusIconLetter.slice(0, 1).toUpperCase()
|
|
4627
|
+
});
|
|
4628
|
+
if (item.statusIconUser) itemStatus.icon = /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)((0, $d98095a4855ffc64$export$a300a79023cea761), {
|
|
4629
|
+
children: /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)((0, $0319693440f03062$export$2e2bcd8739ae039), {})
|
|
4630
|
+
});
|
|
4631
|
+
}
|
|
4632
|
+
return /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)((0, $c0a266a61addea66$export$14834abbfce3b8cd), {
|
|
4633
|
+
options: {
|
|
4634
|
+
width: "325px",
|
|
4635
|
+
backgroundColor: "#2d2d2d",
|
|
4636
|
+
ellipsis: true,
|
|
4637
|
+
icon: item.iconUrl ? /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)((0, $d98095a4855ffc64$export$8503ce930eaa5c44), {
|
|
4638
|
+
style: {
|
|
4639
|
+
...item.iconStyle
|
|
4640
|
+
},
|
|
4641
|
+
src: item.iconUrl,
|
|
4642
|
+
onError: (0, $c0a266a61addea66$export$5640675ad9afe3e2)
|
|
4643
|
+
}) : undefined,
|
|
4644
|
+
button: {
|
|
4645
|
+
text: "Open",
|
|
4646
|
+
action: ()=>window.open(item.url, "_blank"),
|
|
4647
|
+
style: {
|
|
4648
|
+
backgroundColor: "#515151",
|
|
4649
|
+
border: "2px solid #515151"
|
|
4650
|
+
}
|
|
4651
|
+
},
|
|
4652
|
+
status: itemStatus
|
|
4653
|
+
},
|
|
4654
|
+
children: item.title
|
|
4655
|
+
}, item.id);
|
|
4656
|
+
})
|
|
4657
|
+
})
|
|
4658
|
+
]
|
|
4659
|
+
});
|
|
4660
|
+
};
|
|
4661
|
+
|
|
4662
|
+
|
|
4663
|
+
|
|
4309
4664
|
const $b1a83827308c567d$export$f4a8a05247f8d4c = (0, ($parcel$interopDefault($jQDcL$styledcomponents))).div`
|
|
4310
4665
|
display: flex;
|
|
4311
4666
|
justify-content: center;
|
|
@@ -4334,8 +4689,10 @@ const $c378a92744dc7f32$export$8bd7ff36223ef5c1 = "youtube_start";
|
|
|
4334
4689
|
const $c378a92744dc7f32$export$1712c056f28ddd33 = "youtube_play";
|
|
4335
4690
|
const $c378a92744dc7f32$export$405a29439cf92237 = "youtube_pause";
|
|
4336
4691
|
const $c378a92744dc7f32$export$649698d6e35b1ef3 = "youtube_stop";
|
|
4337
|
-
const $c378a92744dc7f32$var$YoutubeTile = (
|
|
4338
|
-
const
|
|
4692
|
+
const $c378a92744dc7f32$var$YoutubeTile = (tile)=>{
|
|
4693
|
+
const { selfPeerId: selfPeerId } = (0, $jQDcL$react.useContext)((0, $8b39f32976a7698a$export$2e2bcd8739ae039));
|
|
4694
|
+
const [player1, setPlayer] = (0, $jQDcL$react.useState)(null);
|
|
4695
|
+
const isSelf = tile.peerId === selfPeerId;
|
|
4339
4696
|
const onVideoStateChange = (event)=>{
|
|
4340
4697
|
const time = event.target.getCurrentTime();
|
|
4341
4698
|
if (event.data === YT.PlayerState.PAUSED) (0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).sendCustomMessageToAll({
|
|
@@ -4348,6 +4705,16 @@ const $c378a92744dc7f32$var$YoutubeTile = ({ data: data })=>{
|
|
|
4348
4705
|
});
|
|
4349
4706
|
};
|
|
4350
4707
|
(0, $jQDcL$react.useEffect)(()=>{
|
|
4708
|
+
const onVideoReady = (event)=>{
|
|
4709
|
+
const player = event.target;
|
|
4710
|
+
if (!isSelf) (0, $65bf10a117819168$export$e9785ae652b3a722)({
|
|
4711
|
+
title: player.videoTitle || "Video",
|
|
4712
|
+
url: `https://youtube.com/watch?v=${tile.data.videoId}`,
|
|
4713
|
+
iconUrl: `https://i.ytimg.com/vi/${tile.data.videoId}/mqdefault.jpg`,
|
|
4714
|
+
statusText: "YouTube",
|
|
4715
|
+
statusIconUrl: "https://stream-assets.snapcall.io/icons/youtube.png"
|
|
4716
|
+
});
|
|
4717
|
+
};
|
|
4351
4718
|
setPlayer((currentPlayer)=>{
|
|
4352
4719
|
if (currentPlayer) currentPlayer.destroy();
|
|
4353
4720
|
return null;
|
|
@@ -4356,74 +4723,77 @@ const $c378a92744dc7f32$var$YoutubeTile = ({ data: data })=>{
|
|
|
4356
4723
|
const youtubePlayer = new YT.Player("youtube-player", {
|
|
4357
4724
|
height: "390",
|
|
4358
4725
|
width: "640",
|
|
4359
|
-
videoId: data.videoId,
|
|
4726
|
+
videoId: tile.data.videoId,
|
|
4360
4727
|
playerVars: {
|
|
4361
4728
|
autoplay: 1,
|
|
4362
|
-
controls:
|
|
4729
|
+
controls: isSelf ? 1 : 0,
|
|
4363
4730
|
playsinline: 1,
|
|
4364
4731
|
enablejsapi: 1,
|
|
4365
4732
|
origin: window.location.origin,
|
|
4366
4733
|
rel: 0,
|
|
4367
|
-
start: data.time || 0
|
|
4734
|
+
start: tile.data.time || 0
|
|
4368
4735
|
},
|
|
4369
4736
|
events: {
|
|
4370
|
-
|
|
4737
|
+
onReady: onVideoReady,
|
|
4738
|
+
onStateChange: isSelf ? onVideoStateChange : undefined
|
|
4371
4739
|
}
|
|
4372
4740
|
});
|
|
4373
4741
|
setPlayer(youtubePlayer);
|
|
4374
4742
|
};
|
|
4375
4743
|
if (window?.YT?.loaded) window.onYouTubeIframeAPIReady();
|
|
4376
4744
|
else (0, $81369fe5a359bb1e$export$2cb99e4be0dc4646)("https://www.youtube.com/iframe_api");
|
|
4377
|
-
if (
|
|
4745
|
+
if (isSelf) {
|
|
4378
4746
|
(0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).sendCustomMessageToAll({
|
|
4379
4747
|
type: $c378a92744dc7f32$export$8bd7ff36223ef5c1,
|
|
4380
|
-
videoId: data.videoId
|
|
4748
|
+
videoId: tile.data.videoId
|
|
4381
4749
|
});
|
|
4382
4750
|
return ()=>{
|
|
4383
4751
|
(0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).sendCustomMessageToAll({
|
|
4384
4752
|
type: $c378a92744dc7f32$export$649698d6e35b1ef3,
|
|
4385
|
-
videoId: data.videoId
|
|
4753
|
+
videoId: tile.data.videoId
|
|
4386
4754
|
});
|
|
4387
4755
|
};
|
|
4388
4756
|
}
|
|
4389
4757
|
}, [
|
|
4390
|
-
data
|
|
4758
|
+
tile.data,
|
|
4759
|
+
isSelf
|
|
4391
4760
|
]);
|
|
4392
4761
|
(0, $jQDcL$react.useEffect)(()=>{
|
|
4393
|
-
if (!
|
|
4762
|
+
if (!isSelf && player1) {
|
|
4394
4763
|
const onCustomMessage = (event)=>{
|
|
4395
4764
|
const { type: type , time: time } = event.detail.event;
|
|
4396
4765
|
if (type === $c378a92744dc7f32$export$405a29439cf92237) {
|
|
4397
|
-
|
|
4398
|
-
|
|
4766
|
+
player1.pauseVideo();
|
|
4767
|
+
player1.seekTo(time, true);
|
|
4399
4768
|
} else if (type === $c378a92744dc7f32$export$1712c056f28ddd33) {
|
|
4400
|
-
|
|
4401
|
-
|
|
4769
|
+
player1.playVideo();
|
|
4770
|
+
player1.seekTo(time, true);
|
|
4402
4771
|
}
|
|
4403
4772
|
};
|
|
4404
|
-
|
|
4773
|
+
(0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).addEventListener("customMessage", onCustomMessage);
|
|
4405
4774
|
return ()=>{
|
|
4406
|
-
|
|
4775
|
+
(0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).removeEventListener("customMessage", onCustomMessage);
|
|
4407
4776
|
};
|
|
4408
4777
|
}
|
|
4409
|
-
if (
|
|
4778
|
+
if (isSelf && player1) {
|
|
4410
4779
|
const onNewPeer = (event)=>{
|
|
4411
|
-
const {
|
|
4412
|
-
const time =
|
|
4413
|
-
(0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).sendCustomMessage(
|
|
4780
|
+
const { peerId: peerId } = event.detail;
|
|
4781
|
+
const time = player1.getCurrentTime();
|
|
4782
|
+
(0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).sendCustomMessage(peerId, {
|
|
4414
4783
|
type: $c378a92744dc7f32$export$8bd7ff36223ef5c1,
|
|
4415
|
-
videoId: data.videoId,
|
|
4784
|
+
videoId: tile.data.videoId,
|
|
4416
4785
|
time: time
|
|
4417
4786
|
});
|
|
4418
4787
|
};
|
|
4419
|
-
|
|
4788
|
+
(0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).addEventListener("newPeer", onNewPeer);
|
|
4420
4789
|
return ()=>{
|
|
4421
|
-
|
|
4790
|
+
(0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).removeEventListener("newPeer", onNewPeer);
|
|
4422
4791
|
};
|
|
4423
4792
|
}
|
|
4424
4793
|
}, [
|
|
4425
|
-
data,
|
|
4426
|
-
|
|
4794
|
+
tile.data,
|
|
4795
|
+
isSelf,
|
|
4796
|
+
player1
|
|
4427
4797
|
]);
|
|
4428
4798
|
return /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)((0, $b1a83827308c567d$export$f4a8a05247f8d4c), {
|
|
4429
4799
|
children: /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)((0, $b1a83827308c567d$export$b0da35797f3be127), {
|
|
@@ -4438,7 +4808,190 @@ var $c378a92744dc7f32$export$2e2bcd8739ae039 = $c378a92744dc7f32$var$YoutubeTile
|
|
|
4438
4808
|
|
|
4439
4809
|
|
|
4440
4810
|
|
|
4811
|
+
|
|
4812
|
+
|
|
4813
|
+
|
|
4814
|
+
const $65992ea9297d23d9$export$e19cf0169f1019bf = (0, ($parcel$interopDefault($jQDcL$styledcomponents))).div`
|
|
4815
|
+
display: flex;
|
|
4816
|
+
position: relative;
|
|
4817
|
+
height: 100%;
|
|
4818
|
+
max-width: 100%;
|
|
4819
|
+
`;
|
|
4820
|
+
const $65992ea9297d23d9$export$6ac7409a4d5f70a2 = (0, ($parcel$interopDefault($jQDcL$styledcomponents))).img`
|
|
4821
|
+
max-height: 100%;
|
|
4822
|
+
object-fit: contain;
|
|
4823
|
+
border-radius: 20px;
|
|
4824
|
+
`;
|
|
4825
|
+
const $65992ea9297d23d9$export$1a3b9916b31bd5c3 = (0, ($parcel$interopDefault($jQDcL$styledcomponents))).div`
|
|
4826
|
+
display: flex;
|
|
4827
|
+
flex-direction: column;
|
|
4828
|
+
justify-content: space-between;
|
|
4829
|
+
position: absolute;
|
|
4830
|
+
width: 100%;
|
|
4831
|
+
height: 100%;
|
|
4832
|
+
padding: 16px;
|
|
4833
|
+
box-sizing: border-box;
|
|
4834
|
+
`;
|
|
4835
|
+
const $65992ea9297d23d9$export$8b251419efc915eb = (0, ($parcel$interopDefault($jQDcL$styledcomponents))).div`
|
|
4836
|
+
display: flex;
|
|
4837
|
+
justify-content: space-between;
|
|
4838
|
+
align-items: center;
|
|
4839
|
+
`;
|
|
4840
|
+
const $65992ea9297d23d9$export$7c309220fd1fb205 = (0, ($parcel$interopDefault($jQDcL$styledcomponents))).span`
|
|
4841
|
+
font-size: 12px;
|
|
4842
|
+
font-weight: 700;
|
|
4843
|
+
color: #fff;
|
|
4844
|
+
text-shadow: 0px 1px 0px rgba(0, 0, 0, 0.15);
|
|
4845
|
+
`;
|
|
4846
|
+
const $65992ea9297d23d9$export$7622450089705ca3 = (0, ($parcel$interopDefault($jQDcL$styledcomponents))).a`
|
|
4847
|
+
color: #fff;
|
|
4848
|
+
padding: 6px 12px;
|
|
4849
|
+
font-size: 14px;
|
|
4850
|
+
font-weight: 700;
|
|
4851
|
+
line-height: 16px;
|
|
4852
|
+
background: rgba(28, 32, 36, 0.5);
|
|
4853
|
+
border: none;
|
|
4854
|
+
border-radius: 50px;
|
|
4855
|
+
text-decoration: none;
|
|
4856
|
+
cursor: pointer;
|
|
4857
|
+
`;
|
|
4858
|
+
const $65992ea9297d23d9$export$a06f1c675e846f6f = (0, ($parcel$interopDefault($jQDcL$styledcomponents))).div`
|
|
4859
|
+
display: flex;
|
|
4860
|
+
justify-content: center;
|
|
4861
|
+
`;
|
|
4862
|
+
const $65992ea9297d23d9$export$f9985cea9f8ad92f = (0, ($parcel$interopDefault($jQDcL$styledcomponents))).button`
|
|
4863
|
+
width: 36px;
|
|
4864
|
+
height: 36px;
|
|
4865
|
+
padding: 7px;
|
|
4866
|
+
background: rgba(28, 32, 36, 0.5);
|
|
4867
|
+
border: none;
|
|
4868
|
+
border-radius: 50px;
|
|
4869
|
+
`;
|
|
4870
|
+
const $65992ea9297d23d9$export$26fe7ec9351ff761 = (0, ($parcel$interopDefault($jQDcL$styledcomponents))).img`
|
|
4871
|
+
border: 2px solid #fff;
|
|
4872
|
+
border-radius: 8px;
|
|
4873
|
+
width: 36px;
|
|
4874
|
+
height: 36px;
|
|
4875
|
+
`;
|
|
4876
|
+
const $65992ea9297d23d9$export$49ac927a2aaad85 = (0, ($parcel$interopDefault($jQDcL$styledcomponents))).div`
|
|
4877
|
+
display: flex;
|
|
4878
|
+
justify-content: center;
|
|
4879
|
+
align-items: center;
|
|
4880
|
+
background-color: #2d2d2d;
|
|
4881
|
+
width: 13px;
|
|
4882
|
+
height: 13px;
|
|
4883
|
+
border-radius: 50px;
|
|
4884
|
+
color: #fff;
|
|
4885
|
+
font-size: 7px;
|
|
4886
|
+
font-weight: 700;
|
|
4887
|
+
|
|
4888
|
+
svg {
|
|
4889
|
+
width: 9px;
|
|
4890
|
+
height: 9px;
|
|
4891
|
+
}
|
|
4892
|
+
`;
|
|
4893
|
+
|
|
4894
|
+
|
|
4895
|
+
const $ee98e2bef25871e5$var$SnapshotTile = (tile)=>{
|
|
4896
|
+
const { dispatch: dispatch } = (0, $3f6e908c45fcc5b3$export$b5633a7cfbe42d9f)();
|
|
4897
|
+
const snapshotImageRef = (0, $jQDcL$react.useRef)(null);
|
|
4898
|
+
const [downloadURL, setDownloadURL] = (0, $jQDcL$react.useState)(tile.data.url);
|
|
4899
|
+
const [containerWidth, setContainerWidth] = (0, $jQDcL$react.useState)("auto");
|
|
4900
|
+
const filename = (0, $jQDcL$react.useMemo)(()=>{
|
|
4901
|
+
const slashSplit = tile.data.url.split("/");
|
|
4902
|
+
const name = slashSplit[slashSplit.length - 1];
|
|
4903
|
+
return name;
|
|
4904
|
+
}, [
|
|
4905
|
+
tile.data.url
|
|
4906
|
+
]);
|
|
4907
|
+
const onCloseClick = ()=>{
|
|
4908
|
+
dispatch({
|
|
4909
|
+
type: (0, $a4027a5418fcd07a$export$96a9662a3eda31f6).UNSET_HIGHLIGHTED_TILE
|
|
4910
|
+
});
|
|
4911
|
+
};
|
|
4912
|
+
const updateContainerSize = ()=>{
|
|
4913
|
+
if (snapshotImageRef.current) {
|
|
4914
|
+
const { clientWidth: clientWidth } = snapshotImageRef.current;
|
|
4915
|
+
setContainerWidth(`${clientWidth}px`);
|
|
4916
|
+
}
|
|
4917
|
+
};
|
|
4918
|
+
const formattedTime = new Date(tile.data.createdAt).toLocaleTimeString([], {
|
|
4919
|
+
hour: "2-digit",
|
|
4920
|
+
minute: "2-digit"
|
|
4921
|
+
});
|
|
4922
|
+
(0, $jQDcL$react.useEffect)(()=>{
|
|
4923
|
+
const img = document.createElement("img");
|
|
4924
|
+
img.onload = ()=>{
|
|
4925
|
+
const canvas = document.createElement("canvas");
|
|
4926
|
+
const canvasContext = canvas.getContext("2d");
|
|
4927
|
+
canvas.width = img.width;
|
|
4928
|
+
canvas.height = img.height;
|
|
4929
|
+
canvasContext?.drawImage(img, 0, 0);
|
|
4930
|
+
const dataURL = canvas.toDataURL("image/jpeg");
|
|
4931
|
+
setDownloadURL(dataURL);
|
|
4932
|
+
};
|
|
4933
|
+
img.crossOrigin = "anonymous";
|
|
4934
|
+
img.src = tile.data.url;
|
|
4935
|
+
}, [
|
|
4936
|
+
tile.data.url
|
|
4937
|
+
]);
|
|
4938
|
+
(0, $jQDcL$react.useEffect)(()=>{
|
|
4939
|
+
window.addEventListener("resize", updateContainerSize);
|
|
4940
|
+
return ()=>{
|
|
4941
|
+
window.removeEventListener("resize", updateContainerSize);
|
|
4942
|
+
};
|
|
4943
|
+
}, [
|
|
4944
|
+
snapshotImageRef
|
|
4945
|
+
]);
|
|
4946
|
+
return /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsxs)((0, $65992ea9297d23d9$export$e19cf0169f1019bf), {
|
|
4947
|
+
style: {
|
|
4948
|
+
width: containerWidth
|
|
4949
|
+
},
|
|
4950
|
+
children: [
|
|
4951
|
+
/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)((0, $65992ea9297d23d9$export$6ac7409a4d5f70a2), {
|
|
4952
|
+
onLoad: updateContainerSize,
|
|
4953
|
+
ref: snapshotImageRef,
|
|
4954
|
+
src: tile.data.url,
|
|
4955
|
+
crossOrigin: "anonymous"
|
|
4956
|
+
}),
|
|
4957
|
+
/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsxs)((0, $65992ea9297d23d9$export$1a3b9916b31bd5c3), {
|
|
4958
|
+
children: [
|
|
4959
|
+
/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsxs)((0, $65992ea9297d23d9$export$8b251419efc915eb), {
|
|
4960
|
+
children: [
|
|
4961
|
+
/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsxs)((0, $65992ea9297d23d9$export$7c309220fd1fb205), {
|
|
4962
|
+
children: [
|
|
4963
|
+
"Snapshot \xb7 ",
|
|
4964
|
+
formattedTime
|
|
4965
|
+
]
|
|
4966
|
+
}),
|
|
4967
|
+
/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)((0, $65992ea9297d23d9$export$7622450089705ca3), {
|
|
4968
|
+
href: downloadURL,
|
|
4969
|
+
target: "_blank",
|
|
4970
|
+
download: filename,
|
|
4971
|
+
children: "Save photo"
|
|
4972
|
+
})
|
|
4973
|
+
]
|
|
4974
|
+
}),
|
|
4975
|
+
/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)((0, $65992ea9297d23d9$export$a06f1c675e846f6f), {
|
|
4976
|
+
children: /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)((0, $65992ea9297d23d9$export$f9985cea9f8ad92f), {
|
|
4977
|
+
onClick: onCloseClick,
|
|
4978
|
+
children: /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)((0, $6f36db3b1217f099$export$2e2bcd8739ae039), {})
|
|
4979
|
+
})
|
|
4980
|
+
})
|
|
4981
|
+
]
|
|
4982
|
+
})
|
|
4983
|
+
]
|
|
4984
|
+
});
|
|
4985
|
+
};
|
|
4986
|
+
var $ee98e2bef25871e5$export$2e2bcd8739ae039 = $ee98e2bef25871e5$var$SnapshotTile;
|
|
4987
|
+
|
|
4988
|
+
|
|
4989
|
+
|
|
4990
|
+
|
|
4991
|
+
|
|
4992
|
+
|
|
4441
4993
|
const $1c0fa9be050932fe$var$ScreenshareEvents = ()=>{
|
|
4994
|
+
const { selfPeerId: selfPeerId } = (0, $jQDcL$react.useContext)((0, $8b39f32976a7698a$export$2e2bcd8739ae039));
|
|
4442
4995
|
const { dispatch: dispatch , highlightedTile: highlightedTile } = (0, $3f6e908c45fcc5b3$export$b5633a7cfbe42d9f)();
|
|
4443
4996
|
(0, $jQDcL$react.useEffect)(()=>{
|
|
4444
4997
|
const onRemoteScreensharingUpdate = (event)=>{
|
|
@@ -4449,6 +5002,7 @@ const $1c0fa9be050932fe$var$ScreenshareEvents = ()=>{
|
|
|
4449
5002
|
payload: {
|
|
4450
5003
|
type: "screenshare",
|
|
4451
5004
|
peerId: peerId,
|
|
5005
|
+
isGlobal: true,
|
|
4452
5006
|
data: {
|
|
4453
5007
|
consumerId: consumerId
|
|
4454
5008
|
}
|
|
@@ -4466,29 +5020,29 @@ const $1c0fa9be050932fe$var$ScreenshareEvents = ()=>{
|
|
|
4466
5020
|
type: (0, $a4027a5418fcd07a$export$96a9662a3eda31f6).SET_HIGHLIGHTED_TILE,
|
|
4467
5021
|
payload: {
|
|
4468
5022
|
type: "screenshare",
|
|
4469
|
-
peerId:
|
|
4470
|
-
|
|
4471
|
-
|
|
4472
|
-
}
|
|
5023
|
+
peerId: String(selfPeerId),
|
|
5024
|
+
isGlobal: true,
|
|
5025
|
+
data: {}
|
|
4473
5026
|
}
|
|
4474
5027
|
});
|
|
4475
|
-
else if (highlightedTile?.type === "screenshare" && highlightedTile.
|
|
5028
|
+
else if (highlightedTile?.type === "screenshare" && highlightedTile.peerId === selfPeerId) dispatch({
|
|
4476
5029
|
type: (0, $a4027a5418fcd07a$export$96a9662a3eda31f6).UNSET_HIGHLIGHTED_TILE
|
|
4477
5030
|
});
|
|
4478
5031
|
};
|
|
4479
|
-
|
|
4480
|
-
|
|
4481
|
-
|
|
4482
|
-
|
|
5032
|
+
(0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).addEventListener("newConsumer", onRemoteScreensharingUpdate);
|
|
5033
|
+
(0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).addEventListener("consumerClose", onRemoteScreensharingUpdate);
|
|
5034
|
+
(0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).addEventListener("screenshareEnabled", onScreensharingUpdate);
|
|
5035
|
+
(0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).addEventListener("screenshareDisabled", onScreensharingUpdate);
|
|
4483
5036
|
return ()=>{
|
|
4484
|
-
|
|
4485
|
-
|
|
4486
|
-
|
|
4487
|
-
|
|
5037
|
+
(0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).removeEventListener("newConsumer", onRemoteScreensharingUpdate);
|
|
5038
|
+
(0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).removeEventListener("consumerClose", onRemoteScreensharingUpdate);
|
|
5039
|
+
(0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).removeEventListener("screenshareEnabled", onScreensharingUpdate);
|
|
5040
|
+
(0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).removeEventListener("screenshareDisabled", onScreensharingUpdate);
|
|
4488
5041
|
};
|
|
4489
5042
|
}, [
|
|
4490
5043
|
dispatch,
|
|
4491
|
-
highlightedTile
|
|
5044
|
+
highlightedTile,
|
|
5045
|
+
selfPeerId
|
|
4492
5046
|
]);
|
|
4493
5047
|
return null;
|
|
4494
5048
|
};
|
|
@@ -4498,6 +5052,7 @@ var $1c0fa9be050932fe$export$2e2bcd8739ae039 = $1c0fa9be050932fe$var$Screenshare
|
|
|
4498
5052
|
|
|
4499
5053
|
|
|
4500
5054
|
|
|
5055
|
+
|
|
4501
5056
|
const $45826eb519d8bd73$var$YoutubeEvents = ()=>{
|
|
4502
5057
|
const { dispatch: dispatch , highlightedTile: highlightedTile } = (0, $3f6e908c45fcc5b3$export$b5633a7cfbe42d9f)();
|
|
4503
5058
|
(0, $jQDcL$react.useEffect)(()=>{
|
|
@@ -4509,29 +5064,120 @@ const $45826eb519d8bd73$var$YoutubeEvents = ()=>{
|
|
|
4509
5064
|
payload: {
|
|
4510
5065
|
type: "youtube",
|
|
4511
5066
|
peerId: peerId,
|
|
5067
|
+
isGlobal: true,
|
|
4512
5068
|
data: {
|
|
4513
5069
|
videoId: videoId,
|
|
4514
5070
|
time: time
|
|
4515
5071
|
}
|
|
4516
5072
|
}
|
|
4517
|
-
});
|
|
4518
|
-
else if (type === (0, $c378a92744dc7f32$export$649698d6e35b1ef3)) {
|
|
4519
|
-
if (highlightedTile?.type === "youtube" && highlightedTile.data.videoId === videoId) dispatch({
|
|
4520
|
-
type: (0, $a4027a5418fcd07a$export$96a9662a3eda31f6).UNSET_HIGHLIGHTED_TILE
|
|
4521
|
-
});
|
|
5073
|
+
});
|
|
5074
|
+
else if (type === (0, $c378a92744dc7f32$export$649698d6e35b1ef3)) {
|
|
5075
|
+
if (highlightedTile?.type === "youtube" && highlightedTile.data.videoId === videoId) dispatch({
|
|
5076
|
+
type: (0, $a4027a5418fcd07a$export$96a9662a3eda31f6).UNSET_HIGHLIGHTED_TILE
|
|
5077
|
+
});
|
|
5078
|
+
}
|
|
5079
|
+
};
|
|
5080
|
+
(0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).addEventListener("customMessage", onCustomMessage);
|
|
5081
|
+
return ()=>{
|
|
5082
|
+
(0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).removeEventListener("customMessage", onCustomMessage);
|
|
5083
|
+
};
|
|
5084
|
+
}, [
|
|
5085
|
+
dispatch,
|
|
5086
|
+
highlightedTile
|
|
5087
|
+
]);
|
|
5088
|
+
return null;
|
|
5089
|
+
};
|
|
5090
|
+
var $45826eb519d8bd73$export$2e2bcd8739ae039 = $45826eb519d8bd73$var$YoutubeEvents;
|
|
5091
|
+
|
|
5092
|
+
|
|
5093
|
+
|
|
5094
|
+
|
|
5095
|
+
|
|
5096
|
+
|
|
5097
|
+
|
|
5098
|
+
|
|
5099
|
+
|
|
5100
|
+
|
|
5101
|
+
const $e447bd93acbe2b63$var$SnapshotEvents = ()=>{
|
|
5102
|
+
const { dispatch: dispatch , streams: streams } = (0, $3f6e908c45fcc5b3$export$b5633a7cfbe42d9f)();
|
|
5103
|
+
(0, $jQDcL$react.useEffect)(()=>{
|
|
5104
|
+
const onCustomMessage = async (event)=>{
|
|
5105
|
+
const { peerId: peerId } = event.detail;
|
|
5106
|
+
const { type: type , imageSrc: imageSrc } = event.detail.event;
|
|
5107
|
+
if (type === "snapshot") {
|
|
5108
|
+
const sender = streams.find((stream)=>stream.id === peerId);
|
|
5109
|
+
if (sender) {
|
|
5110
|
+
const statusIcon = sender.displayName ? /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)((0, $65992ea9297d23d9$export$49ac927a2aaad85), {
|
|
5111
|
+
children: sender.displayName.slice(0, 1).toUpperCase()
|
|
5112
|
+
}) : /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)((0, $65992ea9297d23d9$export$49ac927a2aaad85), {
|
|
5113
|
+
children: /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)((0, $0319693440f03062$export$2e2bcd8739ae039), {})
|
|
5114
|
+
});
|
|
5115
|
+
const createdAtDate = new Date();
|
|
5116
|
+
const notificationStatus = {
|
|
5117
|
+
text: "From",
|
|
5118
|
+
boldText: sender.displayName || "User",
|
|
5119
|
+
icon: statusIcon
|
|
5120
|
+
};
|
|
5121
|
+
(0, $84c6cbcbb594d072$export$3a57e165650c636f)("Snapshot shared.", {
|
|
5122
|
+
width: "290px",
|
|
5123
|
+
icon: /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)((0, $65992ea9297d23d9$export$26fe7ec9351ff761), {
|
|
5124
|
+
src: imageSrc,
|
|
5125
|
+
crossOrigin: "anonymous"
|
|
5126
|
+
}),
|
|
5127
|
+
messageStyle: {
|
|
5128
|
+
fontWeight: 600,
|
|
5129
|
+
fontSize: "16px"
|
|
5130
|
+
},
|
|
5131
|
+
button: {
|
|
5132
|
+
text: "Open",
|
|
5133
|
+
action: ({ close: close })=>{
|
|
5134
|
+
dispatch({
|
|
5135
|
+
type: (0, $a4027a5418fcd07a$export$96a9662a3eda31f6).SET_HIGHLIGHTED_TILE,
|
|
5136
|
+
payload: {
|
|
5137
|
+
type: "snapshot",
|
|
5138
|
+
peerId: peerId,
|
|
5139
|
+
isGlobal: false,
|
|
5140
|
+
data: {
|
|
5141
|
+
url: imageSrc,
|
|
5142
|
+
createdAt: createdAtDate.getTime()
|
|
5143
|
+
}
|
|
5144
|
+
}
|
|
5145
|
+
});
|
|
5146
|
+
close();
|
|
5147
|
+
}
|
|
5148
|
+
},
|
|
5149
|
+
status: notificationStatus,
|
|
5150
|
+
duration: 10000
|
|
5151
|
+
});
|
|
5152
|
+
const formattedTime = createdAtDate.toLocaleTimeString([], {
|
|
5153
|
+
hour: "2-digit",
|
|
5154
|
+
minute: "2-digit"
|
|
5155
|
+
});
|
|
5156
|
+
(0, $65bf10a117819168$export$e9785ae652b3a722)({
|
|
5157
|
+
title: `Snapshot · ${formattedTime}`,
|
|
5158
|
+
url: imageSrc,
|
|
5159
|
+
iconUrl: imageSrc,
|
|
5160
|
+
iconStyle: {
|
|
5161
|
+
border: "2px solid #fff"
|
|
5162
|
+
},
|
|
5163
|
+
statusText: notificationStatus.boldText,
|
|
5164
|
+
statusIconLetter: sender.displayName ? sender.displayName.slice(0, 1).toUpperCase() : undefined,
|
|
5165
|
+
statusIconUser: sender.displayName ? false : true
|
|
5166
|
+
});
|
|
5167
|
+
}
|
|
4522
5168
|
}
|
|
4523
5169
|
};
|
|
4524
|
-
|
|
5170
|
+
(0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).addEventListener("customMessage", onCustomMessage);
|
|
4525
5171
|
return ()=>{
|
|
4526
|
-
|
|
5172
|
+
(0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).removeEventListener("customMessage", onCustomMessage);
|
|
4527
5173
|
};
|
|
4528
5174
|
}, [
|
|
4529
|
-
|
|
4530
|
-
|
|
5175
|
+
streams,
|
|
5176
|
+
dispatch
|
|
4531
5177
|
]);
|
|
4532
5178
|
return null;
|
|
4533
5179
|
};
|
|
4534
|
-
var $
|
|
5180
|
+
var $e447bd93acbe2b63$export$2e2bcd8739ae039 = $e447bd93acbe2b63$var$SnapshotEvents;
|
|
4535
5181
|
|
|
4536
5182
|
|
|
4537
5183
|
|
|
@@ -4546,16 +5192,20 @@ const $93a4cff288bd45c5$export$ff6e704acc4ce2a3 = (0, ($parcel$interopDefault($j
|
|
|
4546
5192
|
`;
|
|
4547
5193
|
|
|
4548
5194
|
|
|
5195
|
+
|
|
4549
5196
|
const $c225be5472ba393a$var$HighlightedTile = (tile)=>{
|
|
4550
5197
|
const { orientation: orientation } = (0, $jQDcL$react.useContext)((0, $8b39f32976a7698a$export$2e2bcd8739ae039));
|
|
4551
5198
|
return /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsxs)((0, $93a4cff288bd45c5$export$ff6e704acc4ce2a3), {
|
|
4552
5199
|
orientation: orientation,
|
|
4553
5200
|
children: [
|
|
4554
5201
|
tile.type === "screenshare" && /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)((0, $6e25dd2638faaf71$export$2e2bcd8739ae039), {
|
|
4555
|
-
|
|
5202
|
+
...tile
|
|
4556
5203
|
}),
|
|
4557
5204
|
tile.type === "youtube" && /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)((0, $c378a92744dc7f32$export$2e2bcd8739ae039), {
|
|
4558
|
-
|
|
5205
|
+
...tile
|
|
5206
|
+
}),
|
|
5207
|
+
tile.type === "snapshot" && /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)((0, $ee98e2bef25871e5$export$2e2bcd8739ae039), {
|
|
5208
|
+
...tile
|
|
4559
5209
|
})
|
|
4560
5210
|
]
|
|
4561
5211
|
});
|
|
@@ -4569,9 +5219,9 @@ const $c225be5472ba393a$export$3936649e725efc86 = ()=>{
|
|
|
4569
5219
|
type: (0, $a4027a5418fcd07a$export$96a9662a3eda31f6).UNSET_HIGHLIGHTED_TILE
|
|
4570
5220
|
});
|
|
4571
5221
|
};
|
|
4572
|
-
|
|
5222
|
+
(0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).addEventListener("peerClosed", onPeerClosed);
|
|
4573
5223
|
return ()=>{
|
|
4574
|
-
|
|
5224
|
+
(0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).removeEventListener("peerClosed", onPeerClosed);
|
|
4575
5225
|
};
|
|
4576
5226
|
}, [
|
|
4577
5227
|
dispatch,
|
|
@@ -4580,7 +5230,8 @@ const $c225be5472ba393a$export$3936649e725efc86 = ()=>{
|
|
|
4580
5230
|
return /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsxs)((0, $jQDcL$reactjsxruntime.Fragment), {
|
|
4581
5231
|
children: [
|
|
4582
5232
|
/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)((0, $1c0fa9be050932fe$export$2e2bcd8739ae039), {}),
|
|
4583
|
-
/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)((0, $45826eb519d8bd73$export$2e2bcd8739ae039), {})
|
|
5233
|
+
/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)((0, $45826eb519d8bd73$export$2e2bcd8739ae039), {}),
|
|
5234
|
+
/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)((0, $e447bd93acbe2b63$export$2e2bcd8739ae039), {})
|
|
4584
5235
|
]
|
|
4585
5236
|
});
|
|
4586
5237
|
};
|
|
@@ -4594,6 +5245,10 @@ var $c225be5472ba393a$export$2e2bcd8739ae039 = $c225be5472ba393a$var$Highlighted
|
|
|
4594
5245
|
|
|
4595
5246
|
|
|
4596
5247
|
|
|
5248
|
+
|
|
5249
|
+
const $e8ac63718934c648$var$ThemedPath = (0, ($parcel$interopDefault($jQDcL$styledcomponents))).path`
|
|
5250
|
+
fill: ${({ theme: theme })=>theme.primaryColor};
|
|
5251
|
+
`;
|
|
4597
5252
|
const $e8ac63718934c648$export$c4868e4a24d48fad = /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)("svg", {
|
|
4598
5253
|
width: "14",
|
|
4599
5254
|
height: "14",
|
|
@@ -4612,9 +5267,8 @@ const $e8ac63718934c648$export$edf27be85e5f6da0 = /*#__PURE__*/ (0, $jQDcL$react
|
|
|
4612
5267
|
fill: "none",
|
|
4613
5268
|
xmlns: "http://www.w3.org/2000/svg",
|
|
4614
5269
|
children: [
|
|
4615
|
-
/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)(
|
|
4616
|
-
d: "M12 22c5.523 0 10-4.477 10-10S17.523 2 12 2 2 6.477 2 12s4.477 10 10 10Z"
|
|
4617
|
-
fill: "#6967FC"
|
|
5270
|
+
/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)($e8ac63718934c648$var$ThemedPath, {
|
|
5271
|
+
d: "M12 22c5.523 0 10-4.477 10-10S17.523 2 12 2 2 6.477 2 12s4.477 10 10 10Z"
|
|
4618
5272
|
}),
|
|
4619
5273
|
/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)("path", {
|
|
4620
5274
|
d: "M12 17a1 1 0 1 0 0-2 1 1 0 0 0 0 2ZM12 13a1 1 0 0 1-1-1V8a1 1 0 0 1 2 0v4a1 1 0 0 1-1 1Z",
|
|
@@ -4623,19 +5277,18 @@ const $e8ac63718934c648$export$edf27be85e5f6da0 = /*#__PURE__*/ (0, $jQDcL$react
|
|
|
4623
5277
|
]
|
|
4624
5278
|
});
|
|
4625
5279
|
const $e8ac63718934c648$export$c7df1b15b59b1df2 = /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsxs)("svg", {
|
|
4626
|
-
width: "
|
|
5280
|
+
width: "24",
|
|
4627
5281
|
height: "24",
|
|
4628
|
-
viewBox: "0 0
|
|
5282
|
+
viewBox: "0 0 24 24",
|
|
4629
5283
|
fill: "none",
|
|
4630
5284
|
xmlns: "http://www.w3.org/2000/svg",
|
|
4631
5285
|
children: [
|
|
4632
|
-
/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)(
|
|
4633
|
-
d: "M20.
|
|
4634
|
-
fill: "#6967FC"
|
|
5286
|
+
/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)($e8ac63718934c648$var$ThemedPath, {
|
|
5287
|
+
d: "M20.058 22H3.943a3.023 3.023 0 0 1-2.617-4.534L9.383 3.511a3.023 3.023 0 0 1 5.235 0l8.057 13.955A3.023 3.023 0 0 1 20.058 22Z"
|
|
4635
5288
|
}),
|
|
4636
5289
|
/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)("path", {
|
|
4637
|
-
d: "M12
|
|
4638
|
-
fill: "#
|
|
5290
|
+
d: "M12 18a1 1 0 1 0 0-2 1 1 0 0 0 0 2ZM12 14a1 1 0 0 1-1-1V9a1 1 0 0 1 2 0v4a1 1 0 0 1-1 1Z",
|
|
5291
|
+
fill: "#fff"
|
|
4639
5292
|
})
|
|
4640
5293
|
]
|
|
4641
5294
|
});
|
|
@@ -4700,13 +5353,13 @@ var $537dcc6df507dc4a$export$2e2bcd8739ae039 = $537dcc6df507dc4a$var$tooltip;
|
|
|
4700
5353
|
|
|
4701
5354
|
|
|
4702
5355
|
const $88b23a8428e67b66$var$Video = ()=>{
|
|
4703
|
-
const { videosContainerRef: videosContainerRef , remoteTilesContainerRef: remoteTilesContainerRef , options: options , muted: selfMuted , selfDisplayName: selfDisplayName , orientation: orientation , userInteractionTriggered: userInteractionTriggered , } = (0, $jQDcL$react.useContext)((0, $8b39f32976a7698a$export$2e2bcd8739ae039));
|
|
5356
|
+
const { selfPeerId: selfPeerId , videosContainerRef: videosContainerRef , remoteTilesContainerRef: remoteTilesContainerRef , options: options , muted: selfMuted , selfDisplayName: selfDisplayName , orientation: orientation , userInteractionTriggered: userInteractionTriggered , } = (0, $jQDcL$react.useContext)((0, $8b39f32976a7698a$export$2e2bcd8739ae039));
|
|
4704
5357
|
const [tileSize, setTileSize] = (0, $jQDcL$react.useState)({
|
|
4705
5358
|
width: 0,
|
|
4706
5359
|
height: 0
|
|
4707
5360
|
});
|
|
4708
5361
|
const { streams: streams , highlightedTile: highlightedTile , dispatch: dispatch } = (0, $3f6e908c45fcc5b3$export$b5633a7cfbe42d9f)();
|
|
4709
|
-
const [
|
|
5362
|
+
const [containerWidth, containerHeight] = (0, $56e1e7a85d8bf4bb$export$2b86bedf890eab8)(remoteTilesContainerRef.current);
|
|
4710
5363
|
(0, $jQDcL$react.useEffect)(()=>{
|
|
4711
5364
|
if (options.GDPRDisclaimer) (0, $537dcc6df507dc4a$export$2e2bcd8739ae039)({
|
|
4712
5365
|
message: "Para mejorar la calidad de nuestro servicio, esta llamada ser\xe1 grabada",
|
|
@@ -4717,13 +5370,12 @@ const $88b23a8428e67b66$var$Video = ()=>{
|
|
|
4717
5370
|
options.GDPRDisclaimer
|
|
4718
5371
|
]);
|
|
4719
5372
|
(0, $jQDcL$react.useEffect)(()=>{
|
|
4720
|
-
if (remoteTilesContainerRef?.current &&
|
|
5373
|
+
if (remoteTilesContainerRef?.current && containerWidth && containerHeight) {
|
|
4721
5374
|
const ratio = 1;
|
|
4722
5375
|
const numberOfTiles = remoteTilesContainerRef.current.childElementCount;
|
|
4723
|
-
const { offsetWidth: offsetWidth , offsetHeight: offsetHeight } = remoteTilesContainerRef.current;
|
|
4724
5376
|
const videoWidth = (0, $7de6ded9bdec6f42$export$4d43009c33055644)({
|
|
4725
|
-
availableWidth:
|
|
4726
|
-
availableHeight:
|
|
5377
|
+
availableWidth: containerWidth - 16 * (numberOfTiles - 1),
|
|
5378
|
+
availableHeight: containerHeight - 16 * (numberOfTiles - 1),
|
|
4727
5379
|
numberOfTiles: numberOfTiles,
|
|
4728
5380
|
ratio: ratio
|
|
4729
5381
|
});
|
|
@@ -4735,8 +5387,8 @@ const $88b23a8428e67b66$var$Video = ()=>{
|
|
|
4735
5387
|
}
|
|
4736
5388
|
}, [
|
|
4737
5389
|
remoteTilesContainerRef,
|
|
4738
|
-
|
|
4739
|
-
|
|
5390
|
+
containerWidth,
|
|
5391
|
+
containerHeight,
|
|
4740
5392
|
streams.length,
|
|
4741
5393
|
highlightedTile
|
|
4742
5394
|
]);
|
|
@@ -4751,11 +5403,11 @@ const $88b23a8428e67b66$var$Video = ()=>{
|
|
|
4751
5403
|
]);
|
|
4752
5404
|
(0, $jQDcL$react.useEffect)(()=>{
|
|
4753
5405
|
const onNewPeer = (event)=>{
|
|
4754
|
-
const {
|
|
5406
|
+
const { peerId: peerId , displayName: displayName } = event.detail;
|
|
4755
5407
|
dispatch({
|
|
4756
5408
|
type: (0, $a4027a5418fcd07a$export$96a9662a3eda31f6).ADD_STREAM,
|
|
4757
5409
|
payload: {
|
|
4758
|
-
id:
|
|
5410
|
+
id: peerId,
|
|
4759
5411
|
displayName: displayName
|
|
4760
5412
|
}
|
|
4761
5413
|
});
|
|
@@ -4793,7 +5445,7 @@ const $88b23a8428e67b66$var$Video = ()=>{
|
|
|
4793
5445
|
const onEnterRoom = (event)=>{
|
|
4794
5446
|
const { peers: peers } = event.detail;
|
|
4795
5447
|
const roomStreams = peers.map((peer)=>({
|
|
4796
|
-
id: peer.
|
|
5448
|
+
id: peer.peerId,
|
|
4797
5449
|
displayName: peer.displayName
|
|
4798
5450
|
}));
|
|
4799
5451
|
dispatch({
|
|
@@ -4831,27 +5483,27 @@ const $88b23a8428e67b66$var$Video = ()=>{
|
|
|
4831
5483
|
}
|
|
4832
5484
|
});
|
|
4833
5485
|
};
|
|
4834
|
-
|
|
4835
|
-
|
|
4836
|
-
|
|
4837
|
-
|
|
4838
|
-
|
|
4839
|
-
|
|
4840
|
-
|
|
4841
|
-
|
|
4842
|
-
|
|
4843
|
-
|
|
5486
|
+
(0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).addEventListener("enterRoom", onEnterRoom);
|
|
5487
|
+
(0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).addEventListener("newPeer", onNewPeer);
|
|
5488
|
+
(0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).addEventListener("peerClosed", onPeerClosed);
|
|
5489
|
+
(0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).addEventListener("newConsumer", onConsumerUpdate);
|
|
5490
|
+
(0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).addEventListener("consumerClose", onConsumerUpdate);
|
|
5491
|
+
(0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).addEventListener("producerPaused", onProducerUpdate);
|
|
5492
|
+
(0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).addEventListener("producerResumed", onProducerUpdate);
|
|
5493
|
+
(0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).addEventListener("displayName", onDisplayName);
|
|
5494
|
+
(0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).addEventListener("peerStartSpeak", onPeerSpeakingUpdate);
|
|
5495
|
+
(0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).addEventListener("peerStopSpeak", onPeerSpeakingUpdate);
|
|
4844
5496
|
return ()=>{
|
|
4845
|
-
|
|
4846
|
-
|
|
4847
|
-
|
|
4848
|
-
|
|
4849
|
-
|
|
4850
|
-
|
|
4851
|
-
|
|
4852
|
-
|
|
4853
|
-
|
|
4854
|
-
|
|
5497
|
+
(0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).removeEventListener("enterRoom", onEnterRoom);
|
|
5498
|
+
(0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).removeEventListener("newPeer", onNewPeer);
|
|
5499
|
+
(0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).removeEventListener("peerClosed", onPeerClosed);
|
|
5500
|
+
(0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).removeEventListener("newConsumer", onConsumerUpdate);
|
|
5501
|
+
(0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).removeEventListener("consumerClose", onConsumerUpdate);
|
|
5502
|
+
(0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).removeEventListener("producerPaused", onProducerUpdate);
|
|
5503
|
+
(0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).removeEventListener("producerResumed", onProducerUpdate);
|
|
5504
|
+
(0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).removeEventListener("displayName", onDisplayName);
|
|
5505
|
+
(0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).removeEventListener("peerStartSpeak", onPeerSpeakingUpdate);
|
|
5506
|
+
(0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).removeEventListener("peerStopSpeak", onPeerSpeakingUpdate);
|
|
4855
5507
|
};
|
|
4856
5508
|
}, [
|
|
4857
5509
|
dispatch
|
|
@@ -4877,8 +5529,7 @@ const $88b23a8428e67b66$var$Video = ()=>{
|
|
|
4877
5529
|
children: [
|
|
4878
5530
|
options.audioTiles && /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)((0, $dc81c0e96fbbb967$export$2e2bcd8739ae039), {
|
|
4879
5531
|
stream: {
|
|
4880
|
-
id:
|
|
4881
|
-
microphone: "self",
|
|
5532
|
+
id: String(selfPeerId),
|
|
4882
5533
|
muted: selfMuted,
|
|
4883
5534
|
displayName: selfDisplayName
|
|
4884
5535
|
}
|
|
@@ -4910,14 +5561,17 @@ var $88b23a8428e67b66$export$2e2bcd8739ae039 = $88b23a8428e67b66$var$Video;
|
|
|
4910
5561
|
|
|
4911
5562
|
|
|
4912
5563
|
const $f09948cc22419e6e$var$HangUp = ()=>/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)("svg", {
|
|
4913
|
-
width: "
|
|
4914
|
-
height: "
|
|
4915
|
-
viewBox: "0 0
|
|
5564
|
+
width: "25",
|
|
5565
|
+
height: "24",
|
|
5566
|
+
viewBox: "0 0 25 24",
|
|
4916
5567
|
fill: "none",
|
|
4917
5568
|
xmlns: "http://www.w3.org/2000/svg",
|
|
4918
|
-
children: /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)("
|
|
4919
|
-
|
|
4920
|
-
|
|
5569
|
+
children: /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)("g", {
|
|
5570
|
+
clipPath: "url(#hangup)",
|
|
5571
|
+
children: /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)("path", {
|
|
5572
|
+
d: "M6.942 16.21c.144-.145.34-.25.517-.36a8.735 8.735 0 0 1 1.113-.603 1.851 1.851 0 0 0 .969-2.278l-.151-.438a11.279 11.279 0 0 1 3.05-.432c1.032.003 2.058.149 3.05.432l-.091.458a1.852 1.852 0 0 0 .968 2.278 9.55 9.55 0 0 1 1.113.602c.177.111.354.235.524.366a2.777 2.777 0 0 0 3.593-.333l1.964-1.964a2.776 2.776 0 0 0-.269-4.196 17.588 17.588 0 0 0-21.586.04l-.249.248a2.777 2.777 0 0 0-.63 2.958c.14.367.358.7.637.976l1.963 1.964a2.777 2.777 0 0 0 3.515.281Zm-4.254-3.6a.926.926 0 0 1-.156-1.104.98.98 0 0 1 .26-.31 15.736 15.736 0 0 1 19.303.045 1.009 1.009 0 0 1 .373.7.925.925 0 0 1-.269.714l-1.963 1.964a.925.925 0 0 1-1.172.137 9.979 9.979 0 0 0-.628-.432c-.42-.27-.86-.508-1.316-.713l.491-1.342a.925.925 0 0 0-.55-1.191 13.412 13.412 0 0 0-9.163 0 .926.926 0 0 0-.498.497.926.926 0 0 0-.032.714l.51 1.322c-.46.217-.905.462-1.335.733-.214.135-.423.279-.629.432a.926.926 0 0 1-1.171-.138L2.688 12.61Z",
|
|
5573
|
+
fill: "#fff"
|
|
5574
|
+
})
|
|
4921
5575
|
})
|
|
4922
5576
|
});
|
|
4923
5577
|
var $f09948cc22419e6e$export$2e2bcd8739ae039 = $f09948cc22419e6e$var$HangUp;
|
|
@@ -4925,18 +5579,15 @@ var $f09948cc22419e6e$export$2e2bcd8739ae039 = $f09948cc22419e6e$var$HangUp;
|
|
|
4925
5579
|
|
|
4926
5580
|
|
|
4927
5581
|
|
|
4928
|
-
|
|
4929
|
-
const $ec8eb252693ca260$var$ThemedPath = (0, ($parcel$interopDefault($jQDcL$styledcomponents))).path`
|
|
4930
|
-
fill: ${(props)=>props.theme.controlsIconColor};
|
|
4931
|
-
`;
|
|
4932
5582
|
const $ec8eb252693ca260$var$Rotate = ()=>/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)("svg", {
|
|
4933
|
-
width: "
|
|
4934
|
-
height: "
|
|
4935
|
-
viewBox: "0 0
|
|
5583
|
+
width: "25",
|
|
5584
|
+
height: "24",
|
|
5585
|
+
viewBox: "0 0 25 24",
|
|
4936
5586
|
fill: "none",
|
|
4937
5587
|
xmlns: "http://www.w3.org/2000/svg",
|
|
4938
|
-
children: /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)(
|
|
4939
|
-
d: "
|
|
5588
|
+
children: /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)("path", {
|
|
5589
|
+
d: "M20.41 15.51h-4.53a1 1 0 0 0 0 2h2.4A8 8 0 0 1 4.5 12a1 1 0 1 0-2 0 10 10 0 0 0 16.88 7.23V21a1 1 0 0 0 2 0v-4.5a1 1 0 0 0-.97-.99ZM12.5 2a10 10 0 0 0-6.88 2.77V3a1 1 0 0 0-2 0v4.5a1 1 0 0 0 1 1h4.5a1 1 0 0 0 0-2h-2.4A8 8 0 0 1 20.5 12a1 1 0 0 0 2 0 10 10 0 0 0-10-10Z",
|
|
5590
|
+
fill: "#F7F7F7"
|
|
4940
5591
|
})
|
|
4941
5592
|
});
|
|
4942
5593
|
var $ec8eb252693ca260$export$2e2bcd8739ae039 = $ec8eb252693ca260$var$Rotate;
|
|
@@ -5006,12 +5657,12 @@ var $39ceb925b3865754$export$2e2bcd8739ae039 = $39ceb925b3865754$var$Spinner;
|
|
|
5006
5657
|
|
|
5007
5658
|
const $3b6953f72db3bb17$var$YoutubeIcon = ()=>/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)("svg", {
|
|
5008
5659
|
width: "24",
|
|
5009
|
-
height: "
|
|
5010
|
-
viewBox: "0 0 24
|
|
5660
|
+
height: "25",
|
|
5661
|
+
viewBox: "0 0 24 25",
|
|
5011
5662
|
fill: "none",
|
|
5012
5663
|
xmlns: "http://www.w3.org/2000/svg",
|
|
5013
5664
|
children: /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)("path", {
|
|
5014
|
-
d: "M23
|
|
5665
|
+
d: "M23 10.21a8.499 8.499 0 0 0-.91-4.13 2.92 2.92 0 0 0-1.72-1A78.362 78.362 0 0 0 12 4.77a78.45 78.45 0 0 0-8.34.3 2.87 2.87 0 0 0-1.46.74c-.9.83-1 2.25-1.1 3.45a48.29 48.29 0 0 0 0 6.48 9.55 9.55 0 0 0 .3 2c.12.505.365.972.71 1.36a2.86 2.86 0 0 0 1.49.78c2.156.266 4.328.376 6.5.33 3.5.05 6.57 0 10.2-.28a2.88 2.88 0 0 0 1.53-.78c.28-.28.49-.623.61-1 .358-1.097.533-2.246.52-3.4.04-.56.04-3.94.04-4.54ZM9.74 15.35V9.16l5.92 3.11c-1.66.92-3.85 1.96-5.92 3.08Z",
|
|
5015
5666
|
fill: "#fff"
|
|
5016
5667
|
})
|
|
5017
5668
|
});
|
|
@@ -5019,21 +5670,16 @@ var $3b6953f72db3bb17$export$2e2bcd8739ae039 = $3b6953f72db3bb17$var$YoutubeIcon
|
|
|
5019
5670
|
|
|
5020
5671
|
|
|
5021
5672
|
|
|
5022
|
-
|
|
5023
|
-
const $daca1602b495441e$var$ThemedPath = (0, ($parcel$interopDefault($jQDcL$styledcomponents))).path`
|
|
5024
|
-
fill: ${(props)=>props.white ? "#fff" : props.theme.controlsIconColor};
|
|
5025
|
-
`;
|
|
5026
|
-
const $daca1602b495441e$var$Link = ({ size: size , white: white })=>{
|
|
5027
|
-
const iconSize = size || 20;
|
|
5673
|
+
const $daca1602b495441e$var$Link = ()=>{
|
|
5028
5674
|
return /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)("svg", {
|
|
5029
|
-
width:
|
|
5030
|
-
height:
|
|
5031
|
-
viewBox:
|
|
5675
|
+
width: "24",
|
|
5676
|
+
height: "24",
|
|
5677
|
+
viewBox: "0 0 24 24",
|
|
5032
5678
|
fill: "none",
|
|
5033
5679
|
xmlns: "http://www.w3.org/2000/svg",
|
|
5034
|
-
children: /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)(
|
|
5035
|
-
d: "
|
|
5036
|
-
|
|
5680
|
+
children: /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)("path", {
|
|
5681
|
+
d: "m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1.004 1.004 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1.004 1.004 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1.004 1.004 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.471 2.471 0 0 1 0 3.5l-3.88 3.88a1.002 1.002 0 0 0 .325 1.639.999.999 0 0 0 1.095-.219l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 .71.29 1 1 0 0 0 .71-.29l4.92-4.92a1.004 1.004 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z",
|
|
5682
|
+
fill: "#fff"
|
|
5037
5683
|
})
|
|
5038
5684
|
});
|
|
5039
5685
|
};
|
|
@@ -5069,7 +5715,7 @@ const $06daeb2618dcfb56$export$6e8af0bd0a2aaa77 = (0, ($parcel$interopDefault($j
|
|
|
5069
5715
|
min-height: 48px;
|
|
5070
5716
|
background-color: ${(props)=>{
|
|
5071
5717
|
if (props.danger) return "#d84949";
|
|
5072
|
-
if (props.primary) return
|
|
5718
|
+
if (props.primary) return props.theme.primaryColor;
|
|
5073
5719
|
return props.theme.controlsBackgroundColor;
|
|
5074
5720
|
}};
|
|
5075
5721
|
border: ${(props)=>props.danger || props.primary ? "2px solid transparent" : `2px solid ${props.theme.controlsBorderColor}`};
|
|
@@ -5088,7 +5734,7 @@ const $06daeb2618dcfb56$export$6e8af0bd0a2aaa77 = (0, ($parcel$interopDefault($j
|
|
|
5088
5734
|
border: 2px solid
|
|
5089
5735
|
${(props)=>{
|
|
5090
5736
|
if (props.danger) return "#fc7d7d";
|
|
5091
|
-
if (props.primary) return "#
|
|
5737
|
+
if (props.primary) return "#a3ceff";
|
|
5092
5738
|
return props.theme.controlsHoverBorderColor;
|
|
5093
5739
|
}};
|
|
5094
5740
|
}
|
|
@@ -5124,9 +5770,9 @@ const $9dfd9e2286cffa66$var$isScreenshareSupported = Boolean(navigator.mediaDevi
|
|
|
5124
5770
|
const $9dfd9e2286cffa66$var$HighlightButton = ()=>{
|
|
5125
5771
|
const highlightMenuRef = (0, $jQDcL$react.useRef)(null);
|
|
5126
5772
|
const [isHighlightMenuOpen, setIsHighlightMenuOpen] = (0, $jQDcL$react.useState)(false);
|
|
5127
|
-
const { setIsYoutubePopupVisible: setIsYoutubePopupVisible , setIsLinksharePopupVisible: setIsLinksharePopupVisible } = (0, $jQDcL$react.useContext)((0, $8b39f32976a7698a$export$2e2bcd8739ae039));
|
|
5773
|
+
const { setIsYoutubePopupVisible: setIsYoutubePopupVisible , setIsLinksharePopupVisible: setIsLinksharePopupVisible , selfPeerId: selfPeerId } = (0, $jQDcL$react.useContext)((0, $8b39f32976a7698a$export$2e2bcd8739ae039));
|
|
5128
5774
|
const { highlightedTile: highlightedTile , dispatch: dispatch } = (0, $3f6e908c45fcc5b3$export$b5633a7cfbe42d9f)();
|
|
5129
|
-
const isPresenting = Boolean(highlightedTile?.
|
|
5775
|
+
const isPresenting = Boolean(highlightedTile?.isGlobal && highlightedTile?.peerId === selfPeerId);
|
|
5130
5776
|
(0, $326cea7dbbcb019a$export$71b2224f1ce5e08e)(highlightMenuRef, ()=>setIsHighlightMenuOpen(false));
|
|
5131
5777
|
const onHighlightClick = async ()=>{
|
|
5132
5778
|
if (isPresenting) dispatch({
|
|
@@ -5172,11 +5818,16 @@ const $9dfd9e2286cffa66$var$HighlightButton = ()=>{
|
|
|
5172
5818
|
]
|
|
5173
5819
|
},
|
|
5174
5820
|
];
|
|
5175
|
-
if ($9dfd9e2286cffa66$var$isScreenshareSupported) menuCategories
|
|
5176
|
-
id: "
|
|
5177
|
-
|
|
5178
|
-
|
|
5179
|
-
|
|
5821
|
+
if ($9dfd9e2286cffa66$var$isScreenshareSupported) menuCategories.push({
|
|
5822
|
+
id: "2",
|
|
5823
|
+
items: [
|
|
5824
|
+
{
|
|
5825
|
+
id: "screensharing",
|
|
5826
|
+
title: "Screen Sharing",
|
|
5827
|
+
jsxIcon: /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)((0, $f2ca2ee422d05e6e$export$2e2bcd8739ae039), {}),
|
|
5828
|
+
action: onScreenshareClick
|
|
5829
|
+
},
|
|
5830
|
+
]
|
|
5180
5831
|
});
|
|
5181
5832
|
return /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)((0, $jQDcL$reactjsxruntime.Fragment), {
|
|
5182
5833
|
children: /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsxs)((0, $06daeb2618dcfb56$export$3f103e2d692ed6d2), {
|
|
@@ -5263,9 +5914,9 @@ const $a21b2aa064cb6c32$var$ControlBar = ()=>{
|
|
|
5263
5914
|
setWebcamCount(numberOfAvailableWebcams);
|
|
5264
5915
|
};
|
|
5265
5916
|
(0, $jQDcL$react.useEffect)(()=>{
|
|
5266
|
-
|
|
5917
|
+
(0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).addEventListener("webcamsUpdate", onNewWebcamCount);
|
|
5267
5918
|
return ()=>{
|
|
5268
|
-
|
|
5919
|
+
(0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).removeEventListener("webcamsUpdate", onNewWebcamCount);
|
|
5269
5920
|
};
|
|
5270
5921
|
}, []);
|
|
5271
5922
|
return /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsxs)((0, $06daeb2618dcfb56$export$b6ba9bc16b3ff153), {
|
|
@@ -5345,7 +5996,6 @@ var $a21b2aa064cb6c32$export$2e2bcd8739ae039 = $a21b2aa064cb6c32$var$ControlBar;
|
|
|
5345
5996
|
|
|
5346
5997
|
|
|
5347
5998
|
|
|
5348
|
-
|
|
5349
5999
|
const $b387679730856fb1$export$9d03e7b857083c37 = (0, ($parcel$interopDefault($jQDcL$styledcomponents))).div`
|
|
5350
6000
|
position: absolute;
|
|
5351
6001
|
width: 100%;
|
|
@@ -5394,8 +6044,8 @@ const $b387679730856fb1$export$b421c25a8e0ea22e = (0, ($parcel$interopDefault($j
|
|
|
5394
6044
|
padding: 0;
|
|
5395
6045
|
|
|
5396
6046
|
svg {
|
|
5397
|
-
height:
|
|
5398
|
-
width:
|
|
6047
|
+
height: 15px;
|
|
6048
|
+
width: 15px;
|
|
5399
6049
|
|
|
5400
6050
|
path {
|
|
5401
6051
|
fill: #000;
|
|
@@ -5426,12 +6076,11 @@ const $b387679730856fb1$export$51760c3b0f5567d2 = (0, ($parcel$interopDefault($j
|
|
|
5426
6076
|
const $681806ce8015ae4d$var$QuickConnect = ()=>{
|
|
5427
6077
|
const QuickConnectContainerRef = (0, $jQDcL$react.useRef)(null);
|
|
5428
6078
|
const QuickConnectRef = (0, $jQDcL$react.useRef)(null);
|
|
5429
|
-
const { selfPeerId: selfPeerId , isQuickConnectPopupVisible: isQuickConnectPopupVisible , setIsQuickConnectPopupVisible: setIsQuickConnectPopupVisible , options: options } = (0, $jQDcL$react.useContext)((0, $8b39f32976a7698a$export$2e2bcd8739ae039));
|
|
5430
|
-
const [windowWidth, windowHeight] = (0, $e79bb9d030bdcf5b$export$2e2bcd8739ae039)();
|
|
6079
|
+
const { selfPeerId: selfPeerId , selfDisplayName: selfDisplayName , isQuickConnectPopupVisible: isQuickConnectPopupVisible , setIsQuickConnectPopupVisible: setIsQuickConnectPopupVisible , options: options , orientation: orientation , } = (0, $jQDcL$react.useContext)((0, $8b39f32976a7698a$export$2e2bcd8739ae039));
|
|
5431
6080
|
(0, $326cea7dbbcb019a$export$71b2224f1ce5e08e)(QuickConnectContainerRef, ()=>{
|
|
5432
6081
|
if (isQuickConnectPopupVisible) setIsQuickConnectPopupVisible(false);
|
|
5433
6082
|
});
|
|
5434
|
-
const desktop =
|
|
6083
|
+
const desktop = orientation === "landscape";
|
|
5435
6084
|
const qrCodeURL = (0, $jQDcL$react.useMemo)(()=>{
|
|
5436
6085
|
let url = new URL(window.location.href);
|
|
5437
6086
|
if (selfPeerId) {
|
|
@@ -5443,11 +6092,13 @@ const $681806ce8015ae4d$var$QuickConnect = ()=>{
|
|
|
5443
6092
|
url.searchParams.set("microphone-enabled", "0");
|
|
5444
6093
|
url.searchParams.set("camera-enabled", "1");
|
|
5445
6094
|
url.searchParams.set("quick-connect", selfPeerId);
|
|
6095
|
+
if (selfDisplayName) url.searchParams.set("name", selfDisplayName);
|
|
5446
6096
|
}
|
|
5447
6097
|
return url.href;
|
|
5448
6098
|
}, [
|
|
5449
6099
|
options.sharedURL,
|
|
5450
|
-
selfPeerId
|
|
6100
|
+
selfPeerId,
|
|
6101
|
+
selfDisplayName
|
|
5451
6102
|
]);
|
|
5452
6103
|
const onQuickConnectPopupCloseClick = ()=>setIsQuickConnectPopupVisible(false);
|
|
5453
6104
|
(0, $jQDcL$react.useEffect)(()=>{
|
|
@@ -5455,9 +6106,9 @@ const $681806ce8015ae4d$var$QuickConnect = ()=>{
|
|
|
5455
6106
|
const { type: type } = event.detail.event;
|
|
5456
6107
|
if (type === "quick_connect_close") setIsQuickConnectPopupVisible(false);
|
|
5457
6108
|
};
|
|
5458
|
-
|
|
6109
|
+
(0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).addEventListener("customMessage", onCustomMessage);
|
|
5459
6110
|
return ()=>{
|
|
5460
|
-
|
|
6111
|
+
(0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).removeEventListener("customMessage", onCustomMessage);
|
|
5461
6112
|
};
|
|
5462
6113
|
}, [
|
|
5463
6114
|
setIsQuickConnectPopupVisible
|
|
@@ -5471,9 +6122,14 @@ const $681806ce8015ae4d$var$QuickConnect = ()=>{
|
|
|
5471
6122
|
if (selfPeerId) {
|
|
5472
6123
|
const urlParams = new URLSearchParams(window.location.href);
|
|
5473
6124
|
const quickConnectParam = urlParams.get("quick-connect");
|
|
5474
|
-
|
|
5475
|
-
|
|
5476
|
-
|
|
6125
|
+
const quickConnectNameParam = urlParams.get("name");
|
|
6126
|
+
if (quickConnectParam) {
|
|
6127
|
+
(0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).sendCustomMessage(quickConnectParam, {
|
|
6128
|
+
type: "quick_connect_close"
|
|
6129
|
+
});
|
|
6130
|
+
if (quickConnectNameParam) (0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).setDisplayName(`${quickConnectNameParam} (mobile)`);
|
|
6131
|
+
else (0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).setDisplayName("Mobile");
|
|
6132
|
+
}
|
|
5477
6133
|
}
|
|
5478
6134
|
}, [
|
|
5479
6135
|
selfPeerId
|
|
@@ -5522,47 +6178,42 @@ var $660dc8b06ec61ae0$export$2e2bcd8739ae039 = $660dc8b06ec61ae0$var$capitalizeF
|
|
|
5522
6178
|
|
|
5523
6179
|
|
|
5524
6180
|
|
|
5525
|
-
|
|
5526
|
-
const $f5af46abb3b35e58$var$ThemedPath = (0, ($parcel$interopDefault($jQDcL$styledcomponents))).path`
|
|
5527
|
-
fill: ${(props)=>props.theme.controlsIconColor};
|
|
5528
|
-
`;
|
|
5529
6181
|
const $f5af46abb3b35e58$var$External = ()=>/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)("svg", {
|
|
5530
|
-
width: "
|
|
5531
|
-
height: "
|
|
5532
|
-
viewBox: "0 0
|
|
6182
|
+
width: "20",
|
|
6183
|
+
height: "20",
|
|
6184
|
+
viewBox: "0 0 20 20",
|
|
5533
6185
|
fill: "none",
|
|
5534
6186
|
xmlns: "http://www.w3.org/2000/svg",
|
|
5535
|
-
children: /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)(
|
|
5536
|
-
d: "
|
|
6187
|
+
children: /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)("path", {
|
|
6188
|
+
d: "M15 9.017a.833.833 0 0 0-.833.833v5.983a.833.833 0 0 1-.833.833H4.167a.833.833 0 0 1-.833-.833V6.667a.833.833 0 0 1 .833-.834h5.983a.833.833 0 0 0 0-1.667H4.167a2.5 2.5 0 0 0-2.5 2.5v9.167a2.5 2.5 0 0 0 2.5 2.5h9.167a2.5 2.5 0 0 0 2.5-2.5V9.85A.833.833 0 0 0 15 9.017Zm3.267-6.834a.834.834 0 0 0-.45-.45.834.834 0 0 0-.317-.067h-5a.833.833 0 0 0 0 1.667h2.992l-8.583 8.575a.832.832 0 0 0 0 1.184.833.833 0 0 0 1.183 0l8.575-8.584V7.5a.833.833 0 1 0 1.667 0v-5a.835.835 0 0 0-.067-.317Z",
|
|
6189
|
+
fill: "#fff"
|
|
5537
6190
|
})
|
|
5538
6191
|
});
|
|
5539
6192
|
var $f5af46abb3b35e58$export$2e2bcd8739ae039 = $f5af46abb3b35e58$var$External;
|
|
5540
6193
|
|
|
5541
6194
|
|
|
5542
6195
|
|
|
5543
|
-
|
|
5544
|
-
const $bcd348753bc3b8f8$var$ThemedPath = (0, ($parcel$interopDefault($jQDcL$styledcomponents))).path`
|
|
5545
|
-
fill: ${(props)=>props.theme.controlsIconColor};
|
|
5546
|
-
`;
|
|
5547
|
-
const $bcd348753bc3b8f8$var$Arrow = ({ direction: direction , small: small })=>{
|
|
6196
|
+
const $bcd348753bc3b8f8$var$Arrow = ({ direction: direction })=>{
|
|
5548
6197
|
if (direction === "right") return /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)("svg", {
|
|
5549
|
-
width: "
|
|
5550
|
-
height: "
|
|
5551
|
-
viewBox: "0 0
|
|
6198
|
+
width: "20",
|
|
6199
|
+
height: "20",
|
|
6200
|
+
viewBox: "0 0 20 20",
|
|
5552
6201
|
fill: "none",
|
|
5553
6202
|
xmlns: "http://www.w3.org/2000/svg",
|
|
5554
|
-
children: /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)(
|
|
5555
|
-
d: "
|
|
6203
|
+
children: /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)("path", {
|
|
6204
|
+
d: "M8.233 14.37a.834.834 0 0 1-.59-1.423L10.59 10 7.643 7.054a.833.833 0 1 1 1.179-1.179l3.535 3.536a.833.833 0 0 1 0 1.178l-3.535 3.536a.83.83 0 0 1-.59.244Z",
|
|
6205
|
+
fill: "#fff"
|
|
5556
6206
|
})
|
|
5557
6207
|
});
|
|
5558
6208
|
if (direction === "left") return /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)("svg", {
|
|
5559
|
-
width: "
|
|
5560
|
-
height: "
|
|
5561
|
-
viewBox: "0 0
|
|
6209
|
+
width: "32",
|
|
6210
|
+
height: "32",
|
|
6211
|
+
viewBox: "0 0 32 32",
|
|
5562
6212
|
fill: "none",
|
|
5563
6213
|
xmlns: "http://www.w3.org/2000/svg",
|
|
5564
|
-
children: /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)(
|
|
5565
|
-
d: "
|
|
6214
|
+
children: /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)("path", {
|
|
6215
|
+
d: "M22.667 14.666h-10.12l4.4-4.386a1.34 1.34 0 0 0-1.893-1.894l-6.667 6.667a1.334 1.334 0 0 0-.28.44 1.334 1.334 0 0 0 0 1.013c.063.164.158.314.28.44l6.666 6.667a1.333 1.333 0 0 0 1.894 0 1.334 1.334 0 0 0 0-1.893l-4.4-4.387h10.12a1.333 1.333 0 1 0 0-2.667Z",
|
|
6216
|
+
fill: "#fff"
|
|
5566
6217
|
})
|
|
5567
6218
|
});
|
|
5568
6219
|
return null;
|
|
@@ -5572,19 +6223,32 @@ var $bcd348753bc3b8f8$export$2e2bcd8739ae039 = $bcd348753bc3b8f8$var$Arrow;
|
|
|
5572
6223
|
|
|
5573
6224
|
|
|
5574
6225
|
|
|
6226
|
+
const $802dd6755664a000$var$Speaker = ()=>/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)("svg", {
|
|
6227
|
+
width: "24",
|
|
6228
|
+
height: "24",
|
|
6229
|
+
viewBox: "0 0 24 24",
|
|
6230
|
+
fill: "none",
|
|
6231
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
6232
|
+
children: /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)("path", {
|
|
6233
|
+
d: "M12.43 4.1a1 1 0 0 0-1 .12L6.65 8H3a1 1 0 0 0-1 1v6a1 1 0 0 0 1 1h3.65l4.73 3.78A1 1 0 0 0 12 20a.91.91 0 0 0 .43-.1A1 1 0 0 0 13 19V5a1 1 0 0 0-.57-.9ZM11 16.92l-3.38-2.7A1 1 0 0 0 7 14H4v-4h3a1 1 0 0 0 .62-.22L11 7.08v9.84Zm8.66-10.58a1.004 1.004 0 1 0-1.42 1.42 5.998 5.998 0 0 1-.38 8.84 1 1 0 0 0 .64 1.76 1 1 0 0 0 .64-.23 8 8 0 0 0 .52-11.79Zm-2.83 2.83a1.003 1.003 0 1 0-1.42 1.42A2 2 0 0 1 16 12a2.001 2.001 0 0 1-.71 1.53.997.997 0 1 0 1.28 1.53A4 4 0 0 0 18 12a4.06 4.06 0 0 0-1.17-2.83Z",
|
|
6234
|
+
fill: "#fff"
|
|
6235
|
+
})
|
|
6236
|
+
});
|
|
6237
|
+
var $802dd6755664a000$export$2e2bcd8739ae039 = $802dd6755664a000$var$Speaker;
|
|
6238
|
+
|
|
6239
|
+
|
|
6240
|
+
|
|
5575
6241
|
|
|
5576
6242
|
|
|
5577
|
-
const $41e530447f5fd995$var$ThemedPath = (0, ($parcel$interopDefault($jQDcL$styledcomponents))).path`
|
|
5578
|
-
fill: ${(props)=>props.theme.controlsIconColor};
|
|
5579
|
-
`;
|
|
5580
6243
|
const $41e530447f5fd995$var$Checkmark = ()=>/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)("svg", {
|
|
5581
|
-
width: "
|
|
5582
|
-
height: "
|
|
5583
|
-
viewBox: "0 0
|
|
6244
|
+
width: "20",
|
|
6245
|
+
height: "20",
|
|
6246
|
+
viewBox: "0 0 20 20",
|
|
5584
6247
|
fill: "none",
|
|
5585
6248
|
xmlns: "http://www.w3.org/2000/svg",
|
|
5586
|
-
children: /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)(
|
|
5587
|
-
d: "
|
|
6249
|
+
children: /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)("path", {
|
|
6250
|
+
d: "M15.592 6.008a.833.833 0 0 0-1.184 0L8.2 12.225 5.592 9.608a.852.852 0 0 0-1.184 1.225l3.2 3.2a.833.833 0 0 0 1.184 0l6.8-6.8a.834.834 0 0 0 0-1.225Z",
|
|
6251
|
+
fill: "#fff"
|
|
5588
6252
|
})
|
|
5589
6253
|
});
|
|
5590
6254
|
var $41e530447f5fd995$export$2e2bcd8739ae039 = $41e530447f5fd995$var$Checkmark;
|
|
@@ -5680,6 +6344,22 @@ const $5f1594faf2dff407$export$db1aade9877208c7 = (0, ($parcel$interopDefault($j
|
|
|
5680
6344
|
padding: 16px 18px;
|
|
5681
6345
|
font-size: 14px;
|
|
5682
6346
|
color: ${(props)=>props.theme.settingsTextColor};
|
|
6347
|
+
|
|
6348
|
+
span {
|
|
6349
|
+
display: flex;
|
|
6350
|
+
align-items: center;
|
|
6351
|
+
}
|
|
6352
|
+
`;
|
|
6353
|
+
const $5f1594faf2dff407$export$bb67e2c42c95a3ae = (0, ($parcel$interopDefault($jQDcL$styledcomponents))).div`
|
|
6354
|
+
display: flex;
|
|
6355
|
+
align-items: center;
|
|
6356
|
+
margin-right: 10px;
|
|
6357
|
+
`;
|
|
6358
|
+
const $5f1594faf2dff407$export$f132d77f01dce0a3 = (0, ($parcel$interopDefault($jQDcL$styledcomponents))).p`
|
|
6359
|
+
margin: 0;
|
|
6360
|
+
text-overflow: ellipsis;
|
|
6361
|
+
white-space: nowrap;
|
|
6362
|
+
overflow: hidden;
|
|
5683
6363
|
`;
|
|
5684
6364
|
const $5f1594faf2dff407$export$4f015f15aa624b3d = (0, ($parcel$interopDefault($jQDcL$styledcomponents))).div`
|
|
5685
6365
|
display: flex;
|
|
@@ -5692,48 +6372,325 @@ const $5f1594faf2dff407$export$a172e59999e5ae8e = (0, ($parcel$interopDefault($j
|
|
|
5692
6372
|
position: relative;
|
|
5693
6373
|
width: 40px;
|
|
5694
6374
|
height: 20px;
|
|
5695
|
-
background-color: ${(props)=>props.checked ?
|
|
6375
|
+
background-color: ${(props)=>props.checked ? props.theme.primaryColor : "#b5b5b5"};
|
|
5696
6376
|
border-radius: 10px;
|
|
5697
6377
|
padding: 5px;
|
|
5698
6378
|
box-sizing: border-box;
|
|
5699
6379
|
transition: all 0.4s;
|
|
5700
6380
|
|
|
5701
|
-
&::after {
|
|
5702
|
-
position: absolute;
|
|
5703
|
-
display: block;
|
|
5704
|
-
content: '';
|
|
5705
|
-
right: ${(props)=>props.checked ? "calc(0% + 15px)" : "calc(100% - 5px)"};
|
|
5706
|
-
transform: translate(100%, 0);
|
|
5707
|
-
background-color: #fff;
|
|
5708
|
-
width: 10px;
|
|
5709
|
-
height: 10px;
|
|
5710
|
-
border-radius: 50%;
|
|
5711
|
-
transition: all 0.4s;
|
|
5712
|
-
}
|
|
5713
|
-
`;
|
|
6381
|
+
&::after {
|
|
6382
|
+
position: absolute;
|
|
6383
|
+
display: block;
|
|
6384
|
+
content: '';
|
|
6385
|
+
right: ${(props)=>props.checked ? "calc(0% + 15px)" : "calc(100% - 5px)"};
|
|
6386
|
+
transform: translate(100%, 0);
|
|
6387
|
+
background-color: #fff;
|
|
6388
|
+
width: 10px;
|
|
6389
|
+
height: 10px;
|
|
6390
|
+
border-radius: 50%;
|
|
6391
|
+
transition: all 0.4s;
|
|
6392
|
+
}
|
|
6393
|
+
`;
|
|
6394
|
+
const $5f1594faf2dff407$export$87d6be27a51dc3c4 = (0, ($parcel$interopDefault($jQDcL$styledcomponents))).div`
|
|
6395
|
+
display: flex;
|
|
6396
|
+
flex-direction: column;
|
|
6397
|
+
justify-content: center;
|
|
6398
|
+
align-items: center;
|
|
6399
|
+
padding: 22px;
|
|
6400
|
+
gap: 10px;
|
|
6401
|
+
background-color: #686868;
|
|
6402
|
+
border-radius: 15px;
|
|
6403
|
+
`;
|
|
6404
|
+
const $5f1594faf2dff407$export$30ccd51431e4a7b0 = (0, ($parcel$interopDefault($jQDcL$styledcomponents))).p`
|
|
6405
|
+
font-weight: 700;
|
|
6406
|
+
font-size: 16px;
|
|
6407
|
+
line-height: 16px;
|
|
6408
|
+
text-align: center;
|
|
6409
|
+
margin: 0;
|
|
6410
|
+
`;
|
|
6411
|
+
const $5f1594faf2dff407$export$73afb47ae3e10bf1 = (0, ($parcel$interopDefault($jQDcL$styledcomponents))).p`
|
|
6412
|
+
font-weight: 500;
|
|
6413
|
+
font-size: 14px;
|
|
6414
|
+
line-height: 16px;
|
|
6415
|
+
text-align: center;
|
|
6416
|
+
margin: 0;
|
|
6417
|
+
`;
|
|
6418
|
+
|
|
6419
|
+
|
|
6420
|
+
const $54c346ed2df7d69f$var$languagesList = [
|
|
6421
|
+
"english"
|
|
6422
|
+
];
|
|
6423
|
+
const $54c346ed2df7d69f$export$604ba5624273df44 = ()=>{
|
|
6424
|
+
try {
|
|
6425
|
+
const storedTheme = localStorage.getItem("stream_ui_language");
|
|
6426
|
+
if (storedTheme) return storedTheme;
|
|
6427
|
+
return "english";
|
|
6428
|
+
} catch (localStorageError) {
|
|
6429
|
+
console.warn(localStorageError);
|
|
6430
|
+
return "english";
|
|
6431
|
+
}
|
|
6432
|
+
};
|
|
6433
|
+
const $54c346ed2df7d69f$var$LanguageSubMenu = ({ back: back })=>{
|
|
6434
|
+
const { language: language , setLanguage: setLanguage } = (0, $jQDcL$react.useContext)((0, $8b39f32976a7698a$export$2e2bcd8739ae039));
|
|
6435
|
+
return /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsxs)((0, $jQDcL$reactjsxruntime.Fragment), {
|
|
6436
|
+
children: [
|
|
6437
|
+
/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsxs)((0, $5f1594faf2dff407$export$ba6f0acf5af923bd), {
|
|
6438
|
+
children: [
|
|
6439
|
+
/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)((0, $5f1594faf2dff407$export$edb76fdb8665f52), {
|
|
6440
|
+
children: "Languages"
|
|
6441
|
+
}),
|
|
6442
|
+
/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)((0, $5f1594faf2dff407$export$b16d2ed9d0485f06), {
|
|
6443
|
+
onClick: back,
|
|
6444
|
+
children: /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)((0, $bcd348753bc3b8f8$export$2e2bcd8739ae039), {
|
|
6445
|
+
direction: "left"
|
|
6446
|
+
})
|
|
6447
|
+
})
|
|
6448
|
+
]
|
|
6449
|
+
}),
|
|
6450
|
+
/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)((0, $5f1594faf2dff407$export$b286f91cddfedb5a), {
|
|
6451
|
+
children: /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsxs)((0, $5f1594faf2dff407$export$38050e761cbb2b1d), {
|
|
6452
|
+
children: [
|
|
6453
|
+
/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)((0, $5f1594faf2dff407$export$5caf84ac7a22e7b5), {
|
|
6454
|
+
children: "Language"
|
|
6455
|
+
}),
|
|
6456
|
+
$54c346ed2df7d69f$var$languagesList.map((lang)=>{
|
|
6457
|
+
const checked = language === lang;
|
|
6458
|
+
const onLanguageClick = ()=>{
|
|
6459
|
+
setLanguage(lang);
|
|
6460
|
+
};
|
|
6461
|
+
return /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsxs)((0, $5f1594faf2dff407$export$db1aade9877208c7), {
|
|
6462
|
+
onClick: onLanguageClick,
|
|
6463
|
+
children: [
|
|
6464
|
+
/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)((0, $5f1594faf2dff407$export$f132d77f01dce0a3), {
|
|
6465
|
+
children: (0, $660dc8b06ec61ae0$export$2e2bcd8739ae039)(lang)
|
|
6466
|
+
}),
|
|
6467
|
+
/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)("span", {
|
|
6468
|
+
children: checked && /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)((0, $41e530447f5fd995$export$2e2bcd8739ae039), {})
|
|
6469
|
+
})
|
|
6470
|
+
]
|
|
6471
|
+
}, lang);
|
|
6472
|
+
})
|
|
6473
|
+
]
|
|
6474
|
+
})
|
|
6475
|
+
})
|
|
6476
|
+
]
|
|
6477
|
+
});
|
|
6478
|
+
};
|
|
6479
|
+
var $54c346ed2df7d69f$export$2e2bcd8739ae039 = $54c346ed2df7d69f$var$LanguageSubMenu;
|
|
6480
|
+
|
|
6481
|
+
|
|
6482
|
+
|
|
6483
|
+
|
|
6484
|
+
|
|
6485
|
+
|
|
6486
|
+
|
|
6487
|
+
|
|
6488
|
+
|
|
6489
|
+
|
|
6490
|
+
const $96bb6d4b0a403c60$var$AudioSubMenu = ({ back: back })=>{
|
|
6491
|
+
const [micDevices, setMicDevices] = (0, $jQDcL$react.useState)([]);
|
|
6492
|
+
const [currentMic, setCurrentMic] = (0, $jQDcL$react.useState)(null);
|
|
6493
|
+
const [speakerDevices, setSpeakerDevices] = (0, $jQDcL$react.useState)([]);
|
|
6494
|
+
const [currentSpeaker, setCurrentSpeaker] = (0, $jQDcL$react.useState)(null);
|
|
6495
|
+
const canChangeSpeakers = speakerDevices.length > 0 && "setSinkId" in HTMLAudioElement.prototype;
|
|
6496
|
+
const listDevices = ()=>(0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).listAudioDevices().then((devices)=>{
|
|
6497
|
+
const speakers = devices.filter((device)=>device.kind === "audiooutput" && device.label);
|
|
6498
|
+
const mics = devices.filter((device)=>device.kind === "audioinput" && device.label);
|
|
6499
|
+
setMicDevices(mics);
|
|
6500
|
+
setSpeakerDevices(speakers);
|
|
6501
|
+
// For chrome
|
|
6502
|
+
const speaker = speakers.find((device)=>device.deviceId === "default");
|
|
6503
|
+
const mic = mics.find((device)=>device.deviceId === "default");
|
|
6504
|
+
setCurrentMic(mic || null);
|
|
6505
|
+
setCurrentSpeaker(speaker || null);
|
|
6506
|
+
});
|
|
6507
|
+
const onMicClick = (0, $jQDcL$react.useCallback)(async (mic)=>{
|
|
6508
|
+
if (currentMic?.deviceId === mic.deviceId) return;
|
|
6509
|
+
await (0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).switchMicrophone(mic.deviceId);
|
|
6510
|
+
setCurrentMic(mic);
|
|
6511
|
+
(0, $84c6cbcbb594d072$export$3a57e165650c636f)(`Connected to ${mic.label}`);
|
|
6512
|
+
}, [
|
|
6513
|
+
currentMic
|
|
6514
|
+
]);
|
|
6515
|
+
const onSpeakerClick = (0, $jQDcL$react.useCallback)((speaker)=>{
|
|
6516
|
+
if (currentSpeaker?.deviceId === speaker.deviceId) return;
|
|
6517
|
+
(0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).setAudioSink(speaker.deviceId);
|
|
6518
|
+
setCurrentSpeaker(speaker);
|
|
6519
|
+
(0, $84c6cbcbb594d072$export$3a57e165650c636f)(`Connected to ${speaker.label}`);
|
|
6520
|
+
}, [
|
|
6521
|
+
currentSpeaker
|
|
6522
|
+
]);
|
|
6523
|
+
(0, $jQDcL$react.useEffect)(()=>{
|
|
6524
|
+
listDevices();
|
|
6525
|
+
(0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).addEventListener("devicesListChange", listDevices);
|
|
6526
|
+
return ()=>(0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).removeEventListener("devicesListChange", listDevices);
|
|
6527
|
+
}, []);
|
|
6528
|
+
return /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsxs)((0, $jQDcL$reactjsxruntime.Fragment), {
|
|
6529
|
+
children: [
|
|
6530
|
+
/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsxs)((0, $5f1594faf2dff407$export$ba6f0acf5af923bd), {
|
|
6531
|
+
children: [
|
|
6532
|
+
/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)((0, $5f1594faf2dff407$export$edb76fdb8665f52), {
|
|
6533
|
+
children: "Audio"
|
|
6534
|
+
}),
|
|
6535
|
+
/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)((0, $5f1594faf2dff407$export$b16d2ed9d0485f06), {
|
|
6536
|
+
onClick: back,
|
|
6537
|
+
children: /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)((0, $bcd348753bc3b8f8$export$2e2bcd8739ae039), {
|
|
6538
|
+
direction: "left"
|
|
6539
|
+
})
|
|
6540
|
+
})
|
|
6541
|
+
]
|
|
6542
|
+
}),
|
|
6543
|
+
/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsxs)((0, $5f1594faf2dff407$export$b286f91cddfedb5a), {
|
|
6544
|
+
children: [
|
|
6545
|
+
/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsxs)((0, $5f1594faf2dff407$export$38050e761cbb2b1d), {
|
|
6546
|
+
children: [
|
|
6547
|
+
/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)((0, $5f1594faf2dff407$export$5caf84ac7a22e7b5), {
|
|
6548
|
+
children: "Microphone"
|
|
6549
|
+
}),
|
|
6550
|
+
canChangeSpeakers && micDevices.map((mic)=>{
|
|
6551
|
+
const checked = mic.deviceId === currentMic?.deviceId;
|
|
6552
|
+
return /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsxs)((0, $5f1594faf2dff407$export$db1aade9877208c7), {
|
|
6553
|
+
onClick: ()=>onMicClick(mic),
|
|
6554
|
+
children: [
|
|
6555
|
+
/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)((0, $5f1594faf2dff407$export$f132d77f01dce0a3), {
|
|
6556
|
+
children: mic.label
|
|
6557
|
+
}),
|
|
6558
|
+
/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)("span", {
|
|
6559
|
+
children: checked && /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)((0, $41e530447f5fd995$export$2e2bcd8739ae039), {})
|
|
6560
|
+
})
|
|
6561
|
+
]
|
|
6562
|
+
}, mic.deviceId);
|
|
6563
|
+
}),
|
|
6564
|
+
!canChangeSpeakers && micDevices.length < 1 && /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsxs)((0, $5f1594faf2dff407$export$87d6be27a51dc3c4), {
|
|
6565
|
+
children: [
|
|
6566
|
+
/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)((0, $5f1594faf2dff407$export$30ccd51431e4a7b0), {
|
|
6567
|
+
children: "Microphone is blocked."
|
|
6568
|
+
}),
|
|
6569
|
+
/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)((0, $5f1594faf2dff407$export$73afb47ae3e10bf1), {
|
|
6570
|
+
children: "Please accept microphone sharing before accessing these options."
|
|
6571
|
+
})
|
|
6572
|
+
]
|
|
6573
|
+
})
|
|
6574
|
+
]
|
|
6575
|
+
}),
|
|
6576
|
+
canChangeSpeakers && /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsxs)((0, $5f1594faf2dff407$export$38050e761cbb2b1d), {
|
|
6577
|
+
children: [
|
|
6578
|
+
/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)((0, $5f1594faf2dff407$export$5caf84ac7a22e7b5), {
|
|
6579
|
+
children: "Speakers"
|
|
6580
|
+
}),
|
|
6581
|
+
speakerDevices.map((speaker)=>{
|
|
6582
|
+
const checked = speaker.deviceId === currentSpeaker?.deviceId;
|
|
6583
|
+
return /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsxs)((0, $5f1594faf2dff407$export$db1aade9877208c7), {
|
|
6584
|
+
onClick: ()=>onSpeakerClick(speaker),
|
|
6585
|
+
children: [
|
|
6586
|
+
/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)((0, $5f1594faf2dff407$export$f132d77f01dce0a3), {
|
|
6587
|
+
children: speaker.label
|
|
6588
|
+
}),
|
|
6589
|
+
/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)("span", {
|
|
6590
|
+
children: checked && /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)((0, $41e530447f5fd995$export$2e2bcd8739ae039), {})
|
|
6591
|
+
})
|
|
6592
|
+
]
|
|
6593
|
+
}, speaker.deviceId);
|
|
6594
|
+
})
|
|
6595
|
+
]
|
|
6596
|
+
})
|
|
6597
|
+
]
|
|
6598
|
+
})
|
|
6599
|
+
]
|
|
6600
|
+
});
|
|
6601
|
+
};
|
|
6602
|
+
var $96bb6d4b0a403c60$export$2e2bcd8739ae039 = $96bb6d4b0a403c60$var$AudioSubMenu;
|
|
6603
|
+
|
|
5714
6604
|
|
|
5715
6605
|
|
|
5716
|
-
|
|
5717
|
-
|
|
5718
|
-
|
|
5719
|
-
|
|
5720
|
-
|
|
5721
|
-
|
|
5722
|
-
|
|
5723
|
-
|
|
5724
|
-
|
|
5725
|
-
|
|
5726
|
-
|
|
6606
|
+
|
|
6607
|
+
|
|
6608
|
+
|
|
6609
|
+
|
|
6610
|
+
|
|
6611
|
+
|
|
6612
|
+
|
|
6613
|
+
const $097072919b56b62a$var$resolutions = Object.keys((0, $1dedebd5ff3002eb$export$d21ffcc5eb136bfa)).map((key)=>{
|
|
6614
|
+
const constraints = (0, $1dedebd5ff3002eb$export$d21ffcc5eb136bfa);
|
|
6615
|
+
switch(constraints[key].height.ideal){
|
|
6616
|
+
case 240:
|
|
6617
|
+
return {
|
|
6618
|
+
name: "Low definition (240p)",
|
|
6619
|
+
key: key
|
|
6620
|
+
};
|
|
6621
|
+
case 480:
|
|
6622
|
+
return {
|
|
6623
|
+
name: "Standard definition (480p)",
|
|
6624
|
+
key: key
|
|
6625
|
+
};
|
|
6626
|
+
case 720:
|
|
6627
|
+
return {
|
|
6628
|
+
name: "Hight definition (720p)",
|
|
6629
|
+
key: key
|
|
6630
|
+
};
|
|
6631
|
+
default:
|
|
6632
|
+
return {
|
|
6633
|
+
name: "",
|
|
6634
|
+
key: key
|
|
6635
|
+
};
|
|
5727
6636
|
}
|
|
5728
|
-
};
|
|
5729
|
-
const $
|
|
5730
|
-
const
|
|
6637
|
+
}).filter((def)=>def.name !== "");
|
|
6638
|
+
const $097072919b56b62a$var$VideoSubMenu = ({ back: back })=>{
|
|
6639
|
+
const [cameraDevices, setCameraDevices] = (0, $jQDcL$react.useState)(Array.from((0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).getWebcamsList().values()).filter((device)=>device.deviceId));
|
|
6640
|
+
const [currentCamera, setCurrentCamera] = (0, $jQDcL$react.useState)((0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).getCurrentWebcam());
|
|
6641
|
+
const listDevices = async ()=>{
|
|
6642
|
+
const devices = await (0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).listVideoDevices();
|
|
6643
|
+
const authorisedCameras = devices.filter((device)=>device.deviceId);
|
|
6644
|
+
if (authorisedCameras.length > 0) setCameraDevices(authorisedCameras);
|
|
6645
|
+
};
|
|
6646
|
+
const onCameraClick = async (camera)=>{
|
|
6647
|
+
if (currentCamera.device?.deviceId === camera.deviceId) return;
|
|
6648
|
+
if (currentCamera.device) {
|
|
6649
|
+
await (0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).switchWebcam({
|
|
6650
|
+
device: camera
|
|
6651
|
+
});
|
|
6652
|
+
(0, $84c6cbcbb594d072$export$3a57e165650c636f)(`Connected to ${camera.label}`, {
|
|
6653
|
+
duration: 3000
|
|
6654
|
+
});
|
|
6655
|
+
} else {
|
|
6656
|
+
await (0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).enableVideo({
|
|
6657
|
+
device: camera,
|
|
6658
|
+
resolution: currentCamera.resolution
|
|
6659
|
+
});
|
|
6660
|
+
(0, $84c6cbcbb594d072$export$3a57e165650c636f)(`Connected to ${camera.label}`, {
|
|
6661
|
+
duration: 3000
|
|
6662
|
+
});
|
|
6663
|
+
}
|
|
6664
|
+
};
|
|
6665
|
+
const onSendResolutionClick = async (resolution)=>{
|
|
6666
|
+
if (currentCamera.resolution === resolution.key) return;
|
|
6667
|
+
await (0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).setWebcamResolution(resolution.key);
|
|
6668
|
+
(0, $84c6cbcbb594d072$export$3a57e165650c636f)(`Using ${resolution.name} resolution`, {
|
|
6669
|
+
duration: 3000
|
|
6670
|
+
});
|
|
6671
|
+
};
|
|
6672
|
+
const onLocalVideoChange = (event)=>{
|
|
6673
|
+
setCurrentCamera({
|
|
6674
|
+
...event.detail.camera
|
|
6675
|
+
});
|
|
6676
|
+
};
|
|
6677
|
+
(0, $jQDcL$react.useEffect)(()=>{
|
|
6678
|
+
listDevices();
|
|
6679
|
+
(0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).addEventListener("devicesListChange", listDevices);
|
|
6680
|
+
(0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).addEventListener("localVideoChange", onLocalVideoChange);
|
|
6681
|
+
(0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).addEventListener("localVideoAvailable", onLocalVideoChange);
|
|
6682
|
+
return ()=>{
|
|
6683
|
+
(0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).removeEventListener("devicesListChange", listDevices);
|
|
6684
|
+
(0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).removeEventListener("localVideoChange", onLocalVideoChange);
|
|
6685
|
+
(0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).removeEventListener("localVideoAvailable", onLocalVideoChange);
|
|
6686
|
+
};
|
|
6687
|
+
}, []);
|
|
5731
6688
|
return /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsxs)((0, $jQDcL$reactjsxruntime.Fragment), {
|
|
5732
6689
|
children: [
|
|
5733
6690
|
/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsxs)((0, $5f1594faf2dff407$export$ba6f0acf5af923bd), {
|
|
5734
6691
|
children: [
|
|
5735
6692
|
/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)((0, $5f1594faf2dff407$export$edb76fdb8665f52), {
|
|
5736
|
-
children: "
|
|
6693
|
+
children: "Video"
|
|
5737
6694
|
}),
|
|
5738
6695
|
/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)((0, $5f1594faf2dff407$export$b16d2ed9d0485f06), {
|
|
5739
6696
|
onClick: back,
|
|
@@ -5743,46 +6700,78 @@ const $54c346ed2df7d69f$var$LanguageSubMenu = ({ back: back })=>{
|
|
|
5743
6700
|
})
|
|
5744
6701
|
]
|
|
5745
6702
|
}),
|
|
5746
|
-
/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.
|
|
5747
|
-
children:
|
|
5748
|
-
|
|
5749
|
-
|
|
5750
|
-
|
|
5751
|
-
|
|
5752
|
-
|
|
5753
|
-
|
|
5754
|
-
|
|
5755
|
-
|
|
5756
|
-
|
|
5757
|
-
|
|
5758
|
-
|
|
6703
|
+
/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsxs)((0, $5f1594faf2dff407$export$b286f91cddfedb5a), {
|
|
6704
|
+
children: [
|
|
6705
|
+
/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsxs)((0, $5f1594faf2dff407$export$38050e761cbb2b1d), {
|
|
6706
|
+
children: [
|
|
6707
|
+
/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)((0, $5f1594faf2dff407$export$5caf84ac7a22e7b5), {
|
|
6708
|
+
children: "Camera"
|
|
6709
|
+
}),
|
|
6710
|
+
cameraDevices.map((camera)=>{
|
|
6711
|
+
const checked = camera.deviceId === currentCamera.device?.deviceId;
|
|
6712
|
+
return /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsxs)((0, $5f1594faf2dff407$export$db1aade9877208c7), {
|
|
6713
|
+
onClick: ()=>onCameraClick(camera),
|
|
6714
|
+
children: [
|
|
6715
|
+
/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)((0, $5f1594faf2dff407$export$f132d77f01dce0a3), {
|
|
6716
|
+
children: camera.label
|
|
6717
|
+
}),
|
|
6718
|
+
/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)("span", {
|
|
6719
|
+
children: checked && /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)((0, $41e530447f5fd995$export$2e2bcd8739ae039), {})
|
|
6720
|
+
})
|
|
6721
|
+
]
|
|
6722
|
+
}, camera.deviceId);
|
|
6723
|
+
}),
|
|
6724
|
+
cameraDevices.length < 1 && /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsxs)((0, $5f1594faf2dff407$export$87d6be27a51dc3c4), {
|
|
5759
6725
|
children: [
|
|
5760
|
-
/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)(
|
|
5761
|
-
children:
|
|
6726
|
+
/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)((0, $5f1594faf2dff407$export$30ccd51431e4a7b0), {
|
|
6727
|
+
children: "Camera is blocked."
|
|
5762
6728
|
}),
|
|
5763
|
-
/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)(
|
|
5764
|
-
children:
|
|
6729
|
+
/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)((0, $5f1594faf2dff407$export$73afb47ae3e10bf1), {
|
|
6730
|
+
children: "Please accept camera sharing before accessing these options."
|
|
5765
6731
|
})
|
|
5766
6732
|
]
|
|
5767
|
-
}
|
|
5768
|
-
|
|
5769
|
-
|
|
5770
|
-
|
|
6733
|
+
})
|
|
6734
|
+
]
|
|
6735
|
+
}),
|
|
6736
|
+
/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsxs)((0, $5f1594faf2dff407$export$38050e761cbb2b1d), {
|
|
6737
|
+
children: [
|
|
6738
|
+
/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)((0, $5f1594faf2dff407$export$5caf84ac7a22e7b5), {
|
|
6739
|
+
children: "Send Resolution (maximum)"
|
|
6740
|
+
}),
|
|
6741
|
+
$097072919b56b62a$var$resolutions.map((resolution)=>{
|
|
6742
|
+
const checked = resolution.key === currentCamera.resolution;
|
|
6743
|
+
return /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsxs)((0, $5f1594faf2dff407$export$db1aade9877208c7), {
|
|
6744
|
+
onClick: ()=>onSendResolutionClick(resolution),
|
|
6745
|
+
children: [
|
|
6746
|
+
/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)((0, $5f1594faf2dff407$export$f132d77f01dce0a3), {
|
|
6747
|
+
children: resolution.name
|
|
6748
|
+
}),
|
|
6749
|
+
/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)("span", {
|
|
6750
|
+
children: checked && /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)((0, $41e530447f5fd995$export$2e2bcd8739ae039), {})
|
|
6751
|
+
})
|
|
6752
|
+
]
|
|
6753
|
+
}, resolution.key);
|
|
6754
|
+
})
|
|
6755
|
+
]
|
|
6756
|
+
})
|
|
6757
|
+
]
|
|
5771
6758
|
})
|
|
5772
6759
|
]
|
|
5773
6760
|
});
|
|
5774
6761
|
};
|
|
5775
|
-
var $
|
|
6762
|
+
var $097072919b56b62a$export$2e2bcd8739ae039 = $097072919b56b62a$var$VideoSubMenu;
|
|
5776
6763
|
|
|
5777
6764
|
|
|
5778
6765
|
|
|
5779
6766
|
const $7d4fa7ceb4c29739$var$Menu = ()=>{
|
|
5780
6767
|
const [currentMenu, setCurrentMenu] = (0, $jQDcL$react.useState)("base");
|
|
5781
6768
|
const menuPopupRef = (0, $jQDcL$react.useRef)(null);
|
|
5782
|
-
const { isSettingsMenuVisible: isSettingsMenuVisible , setIsSettingsMenuVisible: setIsSettingsMenuVisible , language: language } = (0, $jQDcL$react.useContext)((0, $8b39f32976a7698a$export$2e2bcd8739ae039));
|
|
6769
|
+
const { isSettingsMenuVisible: isSettingsMenuVisible , setIsSettingsMenuVisible: setIsSettingsMenuVisible , language: language , options: options } = (0, $jQDcL$react.useContext)((0, $8b39f32976a7698a$export$2e2bcd8739ae039));
|
|
5783
6770
|
const onCloseClick = ()=>setIsSettingsMenuVisible(false);
|
|
5784
6771
|
const menuBack = ()=>setCurrentMenu("base");
|
|
5785
6772
|
const onLanguageMenuClick = ()=>setCurrentMenu("languages");
|
|
6773
|
+
const onAudioClick = ()=>setCurrentMenu("audio");
|
|
6774
|
+
const onVideoClick = ()=>setCurrentMenu("video");
|
|
5786
6775
|
/* const onDarkModeClick = () => {
|
|
5787
6776
|
if (theme === 'dark') {
|
|
5788
6777
|
setTheme('light');
|
|
@@ -5850,6 +6839,49 @@ const $7d4fa7ceb4c29739$var$Menu = ()=>{
|
|
|
5850
6839
|
})
|
|
5851
6840
|
]
|
|
5852
6841
|
}),
|
|
6842
|
+
/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsxs)((0, $5f1594faf2dff407$export$38050e761cbb2b1d), {
|
|
6843
|
+
children: [
|
|
6844
|
+
/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)((0, $5f1594faf2dff407$export$5caf84ac7a22e7b5), {
|
|
6845
|
+
children: "Devices"
|
|
6846
|
+
}),
|
|
6847
|
+
(0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).isListDevicesSupported() && /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsxs)((0, $5f1594faf2dff407$export$db1aade9877208c7), {
|
|
6848
|
+
onClick: onAudioClick,
|
|
6849
|
+
children: [
|
|
6850
|
+
/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsxs)("span", {
|
|
6851
|
+
children: [
|
|
6852
|
+
/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)((0, $5f1594faf2dff407$export$bb67e2c42c95a3ae), {
|
|
6853
|
+
children: /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)((0, $802dd6755664a000$export$2e2bcd8739ae039), {})
|
|
6854
|
+
}),
|
|
6855
|
+
"Audio"
|
|
6856
|
+
]
|
|
6857
|
+
}),
|
|
6858
|
+
/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)((0, $5f1594faf2dff407$export$4f015f15aa624b3d), {
|
|
6859
|
+
children: /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)((0, $bcd348753bc3b8f8$export$2e2bcd8739ae039), {
|
|
6860
|
+
direction: "right"
|
|
6861
|
+
})
|
|
6862
|
+
})
|
|
6863
|
+
]
|
|
6864
|
+
}),
|
|
6865
|
+
!options.audioTiles && /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsxs)((0, $5f1594faf2dff407$export$db1aade9877208c7), {
|
|
6866
|
+
onClick: onVideoClick,
|
|
6867
|
+
children: [
|
|
6868
|
+
/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsxs)("span", {
|
|
6869
|
+
children: [
|
|
6870
|
+
/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)((0, $5f1594faf2dff407$export$bb67e2c42c95a3ae), {
|
|
6871
|
+
children: /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)((0, $ab00aedf8a706bfe$export$2e2bcd8739ae039), {})
|
|
6872
|
+
}),
|
|
6873
|
+
"Video"
|
|
6874
|
+
]
|
|
6875
|
+
}),
|
|
6876
|
+
/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)((0, $5f1594faf2dff407$export$4f015f15aa624b3d), {
|
|
6877
|
+
children: /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)((0, $bcd348753bc3b8f8$export$2e2bcd8739ae039), {
|
|
6878
|
+
direction: "right"
|
|
6879
|
+
})
|
|
6880
|
+
})
|
|
6881
|
+
]
|
|
6882
|
+
})
|
|
6883
|
+
]
|
|
6884
|
+
}),
|
|
5853
6885
|
/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsxs)((0, $5f1594faf2dff407$export$38050e761cbb2b1d), {
|
|
5854
6886
|
children: [
|
|
5855
6887
|
/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)((0, $5f1594faf2dff407$export$5caf84ac7a22e7b5), {
|
|
@@ -5872,6 +6904,12 @@ const $7d4fa7ceb4c29739$var$Menu = ()=>{
|
|
|
5872
6904
|
}),
|
|
5873
6905
|
currentMenu === "languages" && /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)((0, $54c346ed2df7d69f$export$2e2bcd8739ae039), {
|
|
5874
6906
|
back: menuBack
|
|
6907
|
+
}),
|
|
6908
|
+
currentMenu === "audio" && /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)((0, $96bb6d4b0a403c60$export$2e2bcd8739ae039), {
|
|
6909
|
+
back: menuBack
|
|
6910
|
+
}),
|
|
6911
|
+
currentMenu === "video" && /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)((0, $097072919b56b62a$export$2e2bcd8739ae039), {
|
|
6912
|
+
back: menuBack
|
|
5875
6913
|
})
|
|
5876
6914
|
]
|
|
5877
6915
|
});
|
|
@@ -5886,7 +6924,6 @@ var $7d4fa7ceb4c29739$export$2e2bcd8739ae039 = $7d4fa7ceb4c29739$var$Menu;
|
|
|
5886
6924
|
|
|
5887
6925
|
|
|
5888
6926
|
|
|
5889
|
-
|
|
5890
6927
|
const $219bb3131afe1272$export$b679a9a7caefa4b1 = (0, ($parcel$interopDefault($jQDcL$styledcomponents))).div`
|
|
5891
6928
|
position: absolute;
|
|
5892
6929
|
width: 100%;
|
|
@@ -5981,7 +7018,7 @@ const $219bb3131afe1272$export$176dd61d50c7f3d7 = (0, ($parcel$interopDefault($j
|
|
|
5981
7018
|
|
|
5982
7019
|
&:focus {
|
|
5983
7020
|
outline: none;
|
|
5984
|
-
border: 1px solid
|
|
7021
|
+
border: 1px solid ${({ theme: theme })=>theme.primaryColor};
|
|
5985
7022
|
}
|
|
5986
7023
|
}
|
|
5987
7024
|
`;
|
|
@@ -5996,7 +7033,7 @@ const $219bb3131afe1272$export$baf775d6bf9683d5 = (0, ($parcel$interopDefault($j
|
|
|
5996
7033
|
margin-top: 10px;
|
|
5997
7034
|
`;
|
|
5998
7035
|
const $219bb3131afe1272$export$3711c5e6a7ba3fdc = (0, ($parcel$interopDefault($jQDcL$styledcomponents))).button`
|
|
5999
|
-
background-color:
|
|
7036
|
+
background-color: ${({ theme: theme })=>theme.primaryColor};
|
|
6000
7037
|
padding: 8px 18px;
|
|
6001
7038
|
border-radius: 50px;
|
|
6002
7039
|
margin: 30px auto 0;
|
|
@@ -6014,10 +7051,9 @@ const $696ded7a5399bcd4$var$YoutubePopup = ()=>{
|
|
|
6014
7051
|
const youtubePopupRef = (0, $jQDcL$react.useRef)(null);
|
|
6015
7052
|
const [youtubeInputValue, setYoutubeInputValue] = (0, $jQDcL$react.useState)("");
|
|
6016
7053
|
const [errorMessage, setErrorMessage] = (0, $jQDcL$react.useState)(null);
|
|
6017
|
-
const { isYoutubePopupVisible: isYoutubePopupVisible , setIsYoutubePopupVisible: setIsYoutubePopupVisible } = (0, $jQDcL$react.useContext)((0, $8b39f32976a7698a$export$2e2bcd8739ae039));
|
|
7054
|
+
const { isYoutubePopupVisible: isYoutubePopupVisible , setIsYoutubePopupVisible: setIsYoutubePopupVisible , selfPeerId: selfPeerId , orientation: orientation } = (0, $jQDcL$react.useContext)((0, $8b39f32976a7698a$export$2e2bcd8739ae039));
|
|
6018
7055
|
const { dispatch: dispatch } = (0, $3f6e908c45fcc5b3$export$b5633a7cfbe42d9f)();
|
|
6019
|
-
const
|
|
6020
|
-
const desktop = windowWidth > windowHeight;
|
|
7056
|
+
const desktop = orientation === "landscape";
|
|
6021
7057
|
(0, $326cea7dbbcb019a$export$71b2224f1ce5e08e)(youtubePopupRef, ()=>{
|
|
6022
7058
|
if (isYoutubePopupVisible) setIsYoutubePopupVisible(false);
|
|
6023
7059
|
});
|
|
@@ -6030,10 +7066,10 @@ const $696ded7a5399bcd4$var$YoutubePopup = ()=>{
|
|
|
6030
7066
|
type: (0, $a4027a5418fcd07a$export$96a9662a3eda31f6).SET_HIGHLIGHTED_TILE,
|
|
6031
7067
|
payload: {
|
|
6032
7068
|
type: "youtube",
|
|
6033
|
-
peerId:
|
|
7069
|
+
peerId: String(selfPeerId),
|
|
7070
|
+
isGlobal: true,
|
|
6034
7071
|
data: {
|
|
6035
|
-
videoId: videoId
|
|
6036
|
-
local: true
|
|
7072
|
+
videoId: videoId
|
|
6037
7073
|
}
|
|
6038
7074
|
}
|
|
6039
7075
|
});
|
|
@@ -6116,103 +7152,14 @@ var $696ded7a5399bcd4$export$2e2bcd8739ae039 = $696ded7a5399bcd4$var$YoutubePopu
|
|
|
6116
7152
|
|
|
6117
7153
|
|
|
6118
7154
|
|
|
6119
|
-
|
|
6120
|
-
const $9ba571e4cbf1ce28$var$LinkNotificationContainer = (0, ($parcel$interopDefault($jQDcL$styledcomponents))).div`
|
|
6121
|
-
display: flex;
|
|
6122
|
-
flex-direction: row;
|
|
6123
|
-
align-items: center;
|
|
6124
|
-
max-width: 300px;
|
|
6125
|
-
`;
|
|
6126
|
-
const $9ba571e4cbf1ce28$var$LinkNotificationIcon = (0, ($parcel$interopDefault($jQDcL$styledcomponents))).img`
|
|
6127
|
-
width: 36px;
|
|
6128
|
-
height: 36px;
|
|
6129
|
-
border-radius: 8px;
|
|
6130
|
-
margin-right: 10px;
|
|
6131
|
-
background-color: #fff;
|
|
6132
|
-
`;
|
|
6133
|
-
const $9ba571e4cbf1ce28$var$LinkNotificationMessageContainer = (0, ($parcel$interopDefault($jQDcL$styledcomponents))).div`
|
|
6134
|
-
max-width: 185px;
|
|
6135
|
-
`;
|
|
6136
|
-
const $9ba571e4cbf1ce28$var$LinkNotificationTitle = (0, ($parcel$interopDefault($jQDcL$styledcomponents))).p`
|
|
6137
|
-
margin: 0;
|
|
6138
|
-
font-weight: 700;
|
|
6139
|
-
font-size: 14px;
|
|
6140
|
-
text-overflow: ellipsis;
|
|
6141
|
-
white-space: nowrap;
|
|
6142
|
-
overflow: hidden;
|
|
6143
|
-
`;
|
|
6144
|
-
const $9ba571e4cbf1ce28$var$LinkNotificationText = (0, ($parcel$interopDefault($jQDcL$styledcomponents))).p`
|
|
6145
|
-
margin: 0;
|
|
6146
|
-
font-weigth: 500;
|
|
6147
|
-
font-size: 12px;
|
|
6148
|
-
text-overflow: ellipsis;
|
|
6149
|
-
white-space: nowrap;
|
|
6150
|
-
overflow: hidden;
|
|
6151
|
-
`;
|
|
6152
|
-
const $9ba571e4cbf1ce28$var$LinkNotificationButton = (0, ($parcel$interopDefault($jQDcL$styledcomponents))).button`
|
|
6153
|
-
background-color: #2d2d2d;
|
|
6154
|
-
font: inherit;
|
|
6155
|
-
font-weight: 700;
|
|
6156
|
-
color: inherit;
|
|
6157
|
-
border: none;
|
|
6158
|
-
border-radius: 50px;
|
|
6159
|
-
padding: 6px 12px;
|
|
6160
|
-
margin-left: 10px;
|
|
6161
|
-
cursor: pointer;
|
|
6162
|
-
outline: inherit;
|
|
6163
|
-
box-sizing: border-box;
|
|
6164
|
-
:hover {
|
|
6165
|
-
padding: 4px 10px;
|
|
6166
|
-
border: 2px solid #8d8d8d;
|
|
6167
|
-
}
|
|
6168
|
-
`;
|
|
6169
|
-
const $9ba571e4cbf1ce28$var$linkToast = async ({ url: url , linkData: linkData })=>{
|
|
6170
|
-
const onIconError = ({ currentTarget: currentTarget })=>{
|
|
6171
|
-
currentTarget.onerror = null;
|
|
6172
|
-
currentTarget.src = `https://www.google.com/s2/favicons?domain=${linkData.domain}&sz=32`;
|
|
6173
|
-
};
|
|
6174
|
-
(0, ($parcel$interopDefault($jQDcL$reacthottoast)))(/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsxs)($9ba571e4cbf1ce28$var$LinkNotificationContainer, {
|
|
6175
|
-
children: [
|
|
6176
|
-
/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)($9ba571e4cbf1ce28$var$LinkNotificationIcon, {
|
|
6177
|
-
src: linkData.iconSrc,
|
|
6178
|
-
alt: `favicon for ${linkData.domain}`,
|
|
6179
|
-
onError: onIconError
|
|
6180
|
-
}),
|
|
6181
|
-
/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsxs)($9ba571e4cbf1ce28$var$LinkNotificationMessageContainer, {
|
|
6182
|
-
children: [
|
|
6183
|
-
/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)($9ba571e4cbf1ce28$var$LinkNotificationTitle, {
|
|
6184
|
-
children: linkData.title
|
|
6185
|
-
}),
|
|
6186
|
-
/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)($9ba571e4cbf1ce28$var$LinkNotificationText, {
|
|
6187
|
-
children: linkData.domain
|
|
6188
|
-
})
|
|
6189
|
-
]
|
|
6190
|
-
}),
|
|
6191
|
-
/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)($9ba571e4cbf1ce28$var$LinkNotificationButton, {
|
|
6192
|
-
onClick: ()=>window.open(url, "_blank"),
|
|
6193
|
-
children: "Open"
|
|
6194
|
-
})
|
|
6195
|
-
]
|
|
6196
|
-
}), {
|
|
6197
|
-
style: {
|
|
6198
|
-
maxWidth: "300px"
|
|
6199
|
-
},
|
|
6200
|
-
duration: 10000
|
|
6201
|
-
});
|
|
6202
|
-
};
|
|
6203
|
-
var $9ba571e4cbf1ce28$export$2e2bcd8739ae039 = $9ba571e4cbf1ce28$var$linkToast;
|
|
6204
|
-
|
|
6205
|
-
|
|
6206
|
-
|
|
6207
|
-
|
|
6208
7155
|
const $769aee0d2f01a70c$var$PaypalWhite = ()=>/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)("svg", {
|
|
6209
|
-
width: "
|
|
6210
|
-
height: "
|
|
6211
|
-
viewBox: "0 0
|
|
7156
|
+
width: "24",
|
|
7157
|
+
height: "24",
|
|
7158
|
+
viewBox: "0 0 24 24",
|
|
6212
7159
|
fill: "none",
|
|
6213
7160
|
xmlns: "http://www.w3.org/2000/svg",
|
|
6214
7161
|
children: /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)("path", {
|
|
6215
|
-
d: "
|
|
7162
|
+
d: "M20.437 7.104a3.825 3.825 0 0 0-.573-.523 4.727 4.727 0 0 0-1.158-3.74C17.622 1.619 15.775 1 13.214 1H7a1.892 1.892 0 0 0-1.863 1.592l-2.59 16.406a1.533 1.533 0 0 0 1.516 1.785h2.664l-.082.52A1.467 1.467 0 0 0 8.093 23h3.235a1.762 1.762 0 0 0 1.75-1.47l.641-4.031.01-.055h.3c4.032 0 6.55-1.993 7.285-5.762a5.15 5.15 0 0 0-.877-4.578Zm-12.595 6.6-.714 4.535-.087.544H4.606L7.097 3h6.117c1.936 0 3.318.404 3.992 1.164a2.966 2.966 0 0 1 .608 2.733l-.018.113c-.012.076-.023.15-.044.246a5.847 5.847 0 0 1-2.005 3.67 6.678 6.678 0 0 1-4.217 1.183H9.706a1.88 1.88 0 0 0-1.864 1.595ZM19.351 11.3c-.55 2.828-2.242 4.145-5.322 4.145h-.484a1.762 1.762 0 0 0-1.75 1.473l-.65 4.074L8.717 21l.478-3.034.611-3.853h1.72c.156 0 .295-.023.448-.029.359-.012.716-.026 1.053-.067.205-.026.393-.073.59-.11.272-.05.545-.1.8-.17.191-.053.369-.122.55-.186a7.68 7.68 0 0 0 .698-.279c.168-.079.328-.167.486-.257a6.745 6.745 0 0 0 1.027-.713 6.56 6.56 0 0 0 .537-.519c.113-.12.23-.237.334-.367.173-.221.334-.452.48-.693.076-.122.161-.235.231-.363.203-.371.377-.757.521-1.154.009-.024.021-.044.03-.068.004-.01.01-.02.014-.032.198.717.207 1.472.026 2.193Z",
|
|
6216
7163
|
fill: "#fff"
|
|
6217
7164
|
})
|
|
6218
7165
|
});
|
|
@@ -6234,22 +7181,22 @@ const $769aee0d2f01a70c$var$PaypalColored = ()=>/*#__PURE__*/ (0, $jQDcL$reactjs
|
|
|
6234
7181
|
width: "14",
|
|
6235
7182
|
height: "14",
|
|
6236
7183
|
rx: "7",
|
|
6237
|
-
fill: "url(#
|
|
7184
|
+
fill: "url(#paypalPattern)"
|
|
6238
7185
|
}),
|
|
6239
7186
|
/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsxs)("defs", {
|
|
6240
7187
|
children: [
|
|
6241
7188
|
/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)("pattern", {
|
|
6242
|
-
id: "
|
|
7189
|
+
id: "paypalPattern",
|
|
6243
7190
|
patternContentUnits: "objectBoundingBox",
|
|
6244
7191
|
width: "1",
|
|
6245
7192
|
height: "1",
|
|
6246
7193
|
children: /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)("use", {
|
|
6247
|
-
xlinkHref: "#
|
|
7194
|
+
xlinkHref: "#paypalImage",
|
|
6248
7195
|
transform: "matrix(.00308 0 0 .00308 .154 .154)"
|
|
6249
7196
|
})
|
|
6250
7197
|
}),
|
|
6251
7198
|
/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)("image", {
|
|
6252
|
-
id: "
|
|
7199
|
+
id: "paypalImage",
|
|
6253
7200
|
width: "225",
|
|
6254
7201
|
height: "225",
|
|
6255
7202
|
xlinkHref: "data:image/png;base64,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"
|
|
@@ -6263,6 +7210,7 @@ var $769aee0d2f01a70c$export$2e2bcd8739ae039 = $769aee0d2f01a70c$var$Paypal;
|
|
|
6263
7210
|
|
|
6264
7211
|
|
|
6265
7212
|
|
|
7213
|
+
|
|
6266
7214
|
const $2d8fe9775ff247d9$export$ed0d510542cc4e55 = (0, ($parcel$interopDefault($jQDcL$styledcomponents))).div`
|
|
6267
7215
|
position: absolute;
|
|
6268
7216
|
width: 100%;
|
|
@@ -6357,7 +7305,7 @@ const $2d8fe9775ff247d9$export$dcb32b2b413109d8 = (0, ($parcel$interopDefault($j
|
|
|
6357
7305
|
|
|
6358
7306
|
&:focus {
|
|
6359
7307
|
outline: none;
|
|
6360
|
-
border: 1px solid
|
|
7308
|
+
border: 1px solid ${({ theme: theme })=>theme.primaryColor};
|
|
6361
7309
|
}
|
|
6362
7310
|
}
|
|
6363
7311
|
`;
|
|
@@ -6372,7 +7320,7 @@ const $2d8fe9775ff247d9$export$711a92c06f80c3bd = (0, ($parcel$interopDefault($j
|
|
|
6372
7320
|
margin-top: 10px;
|
|
6373
7321
|
`;
|
|
6374
7322
|
const $2d8fe9775ff247d9$export$aec21c9a4da7a1b7 = (0, ($parcel$interopDefault($jQDcL$styledcomponents))).button`
|
|
6375
|
-
background-color:
|
|
7323
|
+
background-color: ${({ theme: theme })=>theme.primaryColor};
|
|
6376
7324
|
padding: 8px 18px;
|
|
6377
7325
|
border-radius: 50px;
|
|
6378
7326
|
margin: 30px auto 0;
|
|
@@ -6382,12 +7330,55 @@ const $2d8fe9775ff247d9$export$aec21c9a4da7a1b7 = (0, ($parcel$interopDefault($j
|
|
|
6382
7330
|
font-weight: 700;
|
|
6383
7331
|
line-height: 18px;
|
|
6384
7332
|
`;
|
|
7333
|
+
const $2d8fe9775ff247d9$export$9e155375d8fb1f67 = (0, ($parcel$interopDefault($jQDcL$styledcomponents))).img`
|
|
7334
|
+
width: 36px;
|
|
7335
|
+
height: 36px;
|
|
7336
|
+
border-radius: 8px;
|
|
7337
|
+
`;
|
|
7338
|
+
const $2d8fe9775ff247d9$export$5e3f251c730829 = (0, ($parcel$interopDefault($jQDcL$styledcomponents))).div`
|
|
7339
|
+
display: flex;
|
|
7340
|
+
gap: 5px;
|
|
7341
|
+
`;
|
|
6385
7342
|
|
|
6386
7343
|
|
|
6387
7344
|
|
|
6388
7345
|
|
|
6389
7346
|
const $e38290b50aaba0e3$export$a1eac7fdbc2db4af = "linkshare_sent";
|
|
6390
|
-
const $e38290b50aaba0e3$var$
|
|
7347
|
+
const $e38290b50aaba0e3$var$sendLinkNotification = (data)=>{
|
|
7348
|
+
let notificationStatusText = new URL(data.url).hostname;
|
|
7349
|
+
if (notificationStatusText.startsWith("www.")) notificationStatusText = notificationStatusText.slice(4);
|
|
7350
|
+
const notificationIcon = data.ogImage ? /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)((0, $2d8fe9775ff247d9$export$9e155375d8fb1f67), {
|
|
7351
|
+
src: data.ogImage
|
|
7352
|
+
}) : undefined;
|
|
7353
|
+
(0, $84c6cbcbb594d072$export$3a57e165650c636f)(data.title, {
|
|
7354
|
+
width: "350px",
|
|
7355
|
+
icon: notificationIcon,
|
|
7356
|
+
status: {
|
|
7357
|
+
icon: data.favicon,
|
|
7358
|
+
text: "From",
|
|
7359
|
+
boldText: notificationStatusText
|
|
7360
|
+
},
|
|
7361
|
+
button: {
|
|
7362
|
+
text: "Open",
|
|
7363
|
+
action: ({ close: close })=>{
|
|
7364
|
+
window.open(data.url, "_blank");
|
|
7365
|
+
close();
|
|
7366
|
+
}
|
|
7367
|
+
},
|
|
7368
|
+
ellipsis: true,
|
|
7369
|
+
duration: 10000
|
|
7370
|
+
});
|
|
7371
|
+
(0, $65bf10a117819168$export$e9785ae652b3a722)({
|
|
7372
|
+
title: data.title,
|
|
7373
|
+
url: data.url,
|
|
7374
|
+
iconUrl: data.ogImage,
|
|
7375
|
+
statusIconUrl: data.favicon,
|
|
7376
|
+
statusText: notificationStatusText
|
|
7377
|
+
});
|
|
7378
|
+
};
|
|
7379
|
+
const $e38290b50aaba0e3$var$sendPaypalInvoiceNotification = (senderName, url)=>{
|
|
7380
|
+
const title = `${senderName || "User"} sent you an invoice.`;
|
|
7381
|
+
(0, $84c6cbcbb594d072$export$3a57e165650c636f)(title, {
|
|
6391
7382
|
button: {
|
|
6392
7383
|
icon: /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)((0, $769aee0d2f01a70c$export$2e2bcd8739ae039), {}),
|
|
6393
7384
|
text: "Pay",
|
|
@@ -6402,79 +7393,89 @@ const $e38290b50aaba0e3$var$sendPaypalInvoiceNotification = (senderName, url)=>(
|
|
|
6402
7393
|
},
|
|
6403
7394
|
duration: 10000
|
|
6404
7395
|
});
|
|
7396
|
+
(0, $65bf10a117819168$export$e9785ae652b3a722)({
|
|
7397
|
+
title: title,
|
|
7398
|
+
url: url,
|
|
7399
|
+
statusIconUrl: "https://stream-assets.snapcall.io/icons/paypal.png",
|
|
7400
|
+
statusText: "PayPal"
|
|
7401
|
+
});
|
|
7402
|
+
};
|
|
6405
7403
|
const $e38290b50aaba0e3$var$LinksharePopup = ()=>{
|
|
6406
7404
|
const linksharePopupRef = (0, $jQDcL$react.useRef)(null);
|
|
7405
|
+
const linkshareInputRef = (0, $jQDcL$react.useRef)(null);
|
|
6407
7406
|
const [linkshareInputValue, setLinkshareInputValue] = (0, $jQDcL$react.useState)("");
|
|
6408
7407
|
const [errorMessage, setErrorMessage] = (0, $jQDcL$react.useState)(null);
|
|
6409
|
-
const
|
|
6410
|
-
const
|
|
7408
|
+
const [isLoading, setIsLoading] = (0, $jQDcL$react.useState)(false);
|
|
7409
|
+
const { isLinksharePopupVisible: isLinksharePopupVisible , setIsLinksharePopupVisible: setIsLinksharePopupVisible , orientation: orientation } = (0, $jQDcL$react.useContext)((0, $8b39f32976a7698a$export$2e2bcd8739ae039));
|
|
6411
7410
|
const { streams: streams } = (0, $3f6e908c45fcc5b3$export$b5633a7cfbe42d9f)();
|
|
6412
|
-
const desktop =
|
|
7411
|
+
const desktop = orientation === "landscape";
|
|
6413
7412
|
const onCustomMessage = (0, $jQDcL$react.useCallback)((event)=>{
|
|
6414
|
-
const {
|
|
6415
|
-
if (
|
|
6416
|
-
else if (
|
|
6417
|
-
const sender = streams.find((stream)=>stream.id ===
|
|
6418
|
-
$e38290b50aaba0e3$var$sendPaypalInvoiceNotification(sender?.displayName,
|
|
7413
|
+
const { type: type , data: data } = event.detail.event;
|
|
7414
|
+
if (type === $e38290b50aaba0e3$export$a1eac7fdbc2db4af) $e38290b50aaba0e3$var$sendLinkNotification(data);
|
|
7415
|
+
else if (type === "paypal_invoice") {
|
|
7416
|
+
const sender = streams.find((stream)=>stream.id === event.detail.peerId);
|
|
7417
|
+
$e38290b50aaba0e3$var$sendPaypalInvoiceNotification(sender?.displayName, data.url);
|
|
6419
7418
|
}
|
|
6420
7419
|
}, [
|
|
6421
7420
|
streams
|
|
6422
7421
|
]);
|
|
6423
|
-
const onShareClick =
|
|
7422
|
+
const onShareClick = async (event)=>{
|
|
6424
7423
|
event.preventDefault();
|
|
7424
|
+
if (!linkshareInputValue) return;
|
|
6425
7425
|
setErrorMessage(null);
|
|
7426
|
+
setIsLoading(true);
|
|
6426
7427
|
let url;
|
|
6427
7428
|
try {
|
|
6428
|
-
url = new URL(linkshareInputValue
|
|
7429
|
+
url = new URL(linkshareInputValue);
|
|
6429
7430
|
if (url.protocol === "http") url.protocol = "https";
|
|
6430
7431
|
} catch (err) {
|
|
6431
7432
|
setErrorMessage("Invalid link");
|
|
6432
7433
|
console.error(err);
|
|
6433
|
-
return;
|
|
6434
7434
|
}
|
|
6435
|
-
if (url
|
|
6436
|
-
|
|
6437
|
-
|
|
6438
|
-
|
|
6439
|
-
|
|
6440
|
-
|
|
7435
|
+
if (url) {
|
|
7436
|
+
try {
|
|
7437
|
+
if (url.href.indexOf("paypal.com/invoice") !== -1) (0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).sendCustomMessageToAll({
|
|
7438
|
+
type: "paypal_invoice",
|
|
7439
|
+
data: {
|
|
7440
|
+
url: url
|
|
7441
|
+
}
|
|
7442
|
+
});
|
|
7443
|
+
else {
|
|
7444
|
+
const data = await (0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).getShareLinkData(url.href);
|
|
7445
|
+
(0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).sendCustomMessageToAll({
|
|
7446
|
+
type: $e38290b50aaba0e3$export$a1eac7fdbc2db4af,
|
|
7447
|
+
data: data
|
|
7448
|
+
});
|
|
6441
7449
|
}
|
|
6442
|
-
|
|
6443
|
-
|
|
6444
|
-
|
|
6445
|
-
|
|
6446
|
-
|
|
6447
|
-
|
|
6448
|
-
|
|
6449
|
-
|
|
6450
|
-
(0, ($parcel$interopDefault($jQDcL$reacthottoast)))(`Link sent to ${streams[0].displayName || "User"}`);
|
|
6451
|
-
return;
|
|
7450
|
+
if (streams.length < 2) (0, ($parcel$interopDefault($jQDcL$reacthottoast)))(`Link sent to ${streams[0]?.displayName || "User"}`);
|
|
7451
|
+
else (0, ($parcel$interopDefault($jQDcL$reacthottoast)))("Link sent to users");
|
|
7452
|
+
setIsLinksharePopupVisible(false);
|
|
7453
|
+
} catch (err) {
|
|
7454
|
+
console.error(err);
|
|
7455
|
+
(0, ($parcel$interopDefault($jQDcL$reacthottoast)))("Failed to send link", {
|
|
7456
|
+
className: "error"
|
|
7457
|
+
});
|
|
6452
7458
|
}
|
|
6453
|
-
(
|
|
6454
|
-
}
|
|
6455
|
-
|
|
6456
|
-
|
|
6457
|
-
className: "error"
|
|
6458
|
-
});
|
|
6459
|
-
});
|
|
6460
|
-
setIsLinksharePopupVisible(false);
|
|
6461
|
-
}, [
|
|
6462
|
-
streams,
|
|
6463
|
-
linkshareInputValue,
|
|
6464
|
-
setIsLinksharePopupVisible
|
|
6465
|
-
]);
|
|
7459
|
+
setLinkshareInputValue("");
|
|
7460
|
+
}
|
|
7461
|
+
setIsLoading(false);
|
|
7462
|
+
};
|
|
6466
7463
|
const onCloseClick = ()=>setIsLinksharePopupVisible(false);
|
|
6467
7464
|
(0, $jQDcL$react.useEffect)(()=>{
|
|
6468
|
-
|
|
7465
|
+
(0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).addEventListener("customMessage", onCustomMessage);
|
|
6469
7466
|
return ()=>{
|
|
6470
|
-
|
|
7467
|
+
(0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).removeEventListener("customMessage", onCustomMessage);
|
|
6471
7468
|
};
|
|
6472
7469
|
}, [
|
|
6473
7470
|
onCustomMessage
|
|
6474
7471
|
]);
|
|
7472
|
+
const onPopupTransitionEnd = ()=>{
|
|
7473
|
+
if (isLinksharePopupVisible) linkshareInputRef.current?.focus();
|
|
7474
|
+
};
|
|
6475
7475
|
return /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)((0, $2d8fe9775ff247d9$export$ed0d510542cc4e55), {
|
|
6476
7476
|
open: isLinksharePopupVisible,
|
|
6477
7477
|
desktop: desktop,
|
|
7478
|
+
onTransitionEnd: onPopupTransitionEnd,
|
|
6478
7479
|
children: /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsxs)((0, $2d8fe9775ff247d9$export$93c2cc854b34757d), {
|
|
6479
7480
|
ref: linksharePopupRef,
|
|
6480
7481
|
desktop: desktop,
|
|
@@ -6507,6 +7508,7 @@ const $e38290b50aaba0e3$var$LinksharePopup = ()=>{
|
|
|
6507
7508
|
}),
|
|
6508
7509
|
/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)("input", {
|
|
6509
7510
|
id: "linkshare-popup-input",
|
|
7511
|
+
ref: linkshareInputRef,
|
|
6510
7512
|
placeholder: "https://www.example.com",
|
|
6511
7513
|
value: linkshareInputValue,
|
|
6512
7514
|
onChange: (changeEvent)=>setLinkshareInputValue(changeEvent.target.value),
|
|
@@ -6521,8 +7523,17 @@ const $e38290b50aaba0e3$var$LinksharePopup = ()=>{
|
|
|
6521
7523
|
}),
|
|
6522
7524
|
/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)((0, $2d8fe9775ff247d9$export$aec21c9a4da7a1b7), {
|
|
6523
7525
|
type: "submit",
|
|
6524
|
-
disabled:
|
|
6525
|
-
children:
|
|
7526
|
+
disabled: isLoading,
|
|
7527
|
+
children: isLoading ? /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsxs)((0, $2d8fe9775ff247d9$export$5e3f251c730829), {
|
|
7528
|
+
children: [
|
|
7529
|
+
/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)((0, $39ceb925b3865754$export$2e2bcd8739ae039), {
|
|
7530
|
+
size: "18px"
|
|
7531
|
+
}),
|
|
7532
|
+
/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)("span", {
|
|
7533
|
+
children: "Link is creating..."
|
|
7534
|
+
})
|
|
7535
|
+
]
|
|
7536
|
+
}) : "Share Link"
|
|
6526
7537
|
})
|
|
6527
7538
|
]
|
|
6528
7539
|
})
|
|
@@ -6566,6 +7577,7 @@ var $5f509eaff0d9c05a$export$2e2bcd8739ae039 = $5f509eaff0d9c05a$var$Settings;
|
|
|
6566
7577
|
|
|
6567
7578
|
|
|
6568
7579
|
|
|
7580
|
+
|
|
6569
7581
|
const $bbe4b943c376008e$export$104f28dc79f055f4 = (0, ($parcel$interopDefault($jQDcL$styledcomponents))).div`
|
|
6570
7582
|
display: flex;
|
|
6571
7583
|
flex: 1;
|
|
@@ -6574,6 +7586,7 @@ const $bbe4b943c376008e$export$104f28dc79f055f4 = (0, ($parcel$interopDefault($j
|
|
|
6574
7586
|
align-items: center;
|
|
6575
7587
|
background-color: #000;
|
|
6576
7588
|
color: #fff;
|
|
7589
|
+
padding-top: 70px;
|
|
6577
7590
|
`;
|
|
6578
7591
|
const $bbe4b943c376008e$export$51071a7ce784448 = (0, ($parcel$interopDefault($jQDcL$styledcomponents))).span`
|
|
6579
7592
|
font-size: 60px;
|
|
@@ -6590,7 +7603,7 @@ const $bbe4b943c376008e$export$f4e7b895a81715e9 = (0, ($parcel$interopDefault($j
|
|
|
6590
7603
|
margin: 0;
|
|
6591
7604
|
`;
|
|
6592
7605
|
const $bbe4b943c376008e$export$3a4deda42b6182b7 = (0, ($parcel$interopDefault($jQDcL$styledcomponents))).button`
|
|
6593
|
-
background-color:
|
|
7606
|
+
background-color: ${({ theme: theme })=>theme.primaryColor};
|
|
6594
7607
|
border: none;
|
|
6595
7608
|
border-radius: 50px;
|
|
6596
7609
|
padding: 12px 18px;
|
|
@@ -6635,7 +7648,8 @@ const $3d1bfd8f074b99b1$var$EndView = ()=>{
|
|
|
6635
7648
|
ended && /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)((0, $bbe4b943c376008e$export$3a4deda42b6182b7), {
|
|
6636
7649
|
onClick: onGoBackClick,
|
|
6637
7650
|
children: "Go back to call"
|
|
6638
|
-
})
|
|
7651
|
+
}),
|
|
7652
|
+
/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)((0, $65bf10a117819168$export$ad5f39c592532e2d), {})
|
|
6639
7653
|
]
|
|
6640
7654
|
});
|
|
6641
7655
|
};
|
|
@@ -6644,6 +7658,7 @@ var $3d1bfd8f074b99b1$export$2e2bcd8739ae039 = $3d1bfd8f074b99b1$var$EndView;
|
|
|
6644
7658
|
|
|
6645
7659
|
|
|
6646
7660
|
|
|
7661
|
+
|
|
6647
7662
|
const $5dcd9e6925c7037c$var$connected = new Audio("https://cdn.snapcall.io/stream/connected.mp3");
|
|
6648
7663
|
const $5dcd9e6925c7037c$var$disconnected = new Audio("https://cdn.snapcall.io/stream/disconnected.mp3");
|
|
6649
7664
|
const $5dcd9e6925c7037c$var$userConnected = new Audio("https://cdn.snapcall.io/stream/user-connected.mp3");
|
|
@@ -6681,13 +7696,13 @@ const $5dcd9e6925c7037c$var$Sounds = ()=>{
|
|
|
6681
7696
|
}
|
|
6682
7697
|
};
|
|
6683
7698
|
(0, $jQDcL$react.useEffect)(()=>{
|
|
6684
|
-
|
|
6685
|
-
|
|
6686
|
-
|
|
7699
|
+
(0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).addEventListener("newPeer", onNewPeer);
|
|
7700
|
+
(0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).addEventListener("peerClosed", onPeerClosed);
|
|
7701
|
+
(0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).addEventListener("leaveRoom", onLeaveRoom);
|
|
6687
7702
|
return ()=>{
|
|
6688
|
-
|
|
6689
|
-
|
|
6690
|
-
|
|
7703
|
+
(0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).removeEventListener("newPeer", onNewPeer);
|
|
7704
|
+
(0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).removeEventListener("peerClosed", onPeerClosed);
|
|
7705
|
+
(0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).removeEventListener("leaveRoom", onLeaveRoom);
|
|
6691
7706
|
};
|
|
6692
7707
|
}, []);
|
|
6693
7708
|
(0, $jQDcL$react.useEffect)(()=>{
|
|
@@ -6806,6 +7821,7 @@ const $9295e87e6b93e693$export$3bfd0d5209a8006a = ()=>{
|
|
|
6806
7821
|
}
|
|
6807
7822
|
};
|
|
6808
7823
|
const $9295e87e6b93e693$export$f30cb9bc4f736419 = {
|
|
7824
|
+
primaryColor: "#268AFA",
|
|
6809
7825
|
backgroundColor: "#fff",
|
|
6810
7826
|
controlBarBackground: "#fff",
|
|
6811
7827
|
logoColor: "#000",
|
|
@@ -6821,6 +7837,7 @@ const $9295e87e6b93e693$export$f30cb9bc4f736419 = {
|
|
|
6821
7837
|
settingsCloseBackgroundColor: "#eaebec"
|
|
6822
7838
|
};
|
|
6823
7839
|
const $9295e87e6b93e693$export$3e936a8db52a10a0 = {
|
|
7840
|
+
primaryColor: "#268AFA",
|
|
6824
7841
|
backgroundColor: "#000",
|
|
6825
7842
|
controlBarBackground: "linear-gradient(180deg, #000000 0%, #131313 100%)",
|
|
6826
7843
|
logoColor: "#fff",
|
|
@@ -6933,9 +7950,9 @@ const $e41262de25602ed2$var$SvgDefinitions = ()=>/*#__PURE__*/ (0, $jQDcL$reactj
|
|
|
6933
7950
|
}),
|
|
6934
7951
|
/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsxs)("linearGradient", {
|
|
6935
7952
|
id: "screenTop",
|
|
6936
|
-
x1: "15
|
|
7953
|
+
x1: "15",
|
|
6937
7954
|
y1: "3.75",
|
|
6938
|
-
x2: "15
|
|
7955
|
+
x2: "15",
|
|
6939
7956
|
y2: "21.25",
|
|
6940
7957
|
gradientUnits: "userSpaceOnUse",
|
|
6941
7958
|
children: [
|
|
@@ -6950,9 +7967,9 @@ const $e41262de25602ed2$var$SvgDefinitions = ()=>/*#__PURE__*/ (0, $jQDcL$reactj
|
|
|
6950
7967
|
}),
|
|
6951
7968
|
/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsxs)("linearGradient", {
|
|
6952
7969
|
id: "screenBottom",
|
|
6953
|
-
x1: "15
|
|
7970
|
+
x1: "15",
|
|
6954
7971
|
y1: "21.25",
|
|
6955
|
-
x2: "15
|
|
7972
|
+
x2: "15",
|
|
6956
7973
|
y2: "26.25",
|
|
6957
7974
|
gradientUnits: "userSpaceOnUse",
|
|
6958
7975
|
children: [
|
|
@@ -6964,6 +7981,21 @@ const $e41262de25602ed2$var$SvgDefinitions = ()=>/*#__PURE__*/ (0, $jQDcL$reactj
|
|
|
6964
7981
|
stopColor: "#969696"
|
|
6965
7982
|
})
|
|
6966
7983
|
]
|
|
7984
|
+
}),
|
|
7985
|
+
/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)("clipPath", {
|
|
7986
|
+
id: "hangup",
|
|
7987
|
+
children: /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)("path", {
|
|
7988
|
+
fill: "#fff",
|
|
7989
|
+
transform: "translate(.5)",
|
|
7990
|
+
d: "M0 0h24v24H0z"
|
|
7991
|
+
})
|
|
7992
|
+
}),
|
|
7993
|
+
/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)("clipPath", {
|
|
7994
|
+
id: "pip",
|
|
7995
|
+
children: /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)("path", {
|
|
7996
|
+
fill: "#fff",
|
|
7997
|
+
d: "M0 0h24v24H0z"
|
|
7998
|
+
})
|
|
6967
7999
|
})
|
|
6968
8000
|
]
|
|
6969
8001
|
})
|
|
@@ -7196,13 +8228,20 @@ const $c3d5253d9d597eb5$var$audioSource = new Blob([
|
|
|
7196
8228
|
type: "audio/mpeg"
|
|
7197
8229
|
});
|
|
7198
8230
|
const $c3d5253d9d597eb5$var$audioURL = URL.createObjectURL($c3d5253d9d597eb5$var$audioSource);
|
|
7199
|
-
|
|
8231
|
+
let $c3d5253d9d597eb5$var$mediaResult = undefined;
|
|
8232
|
+
const $c3d5253d9d597eb5$export$716eeec86fd18da7 = ()=>{
|
|
8233
|
+
$c3d5253d9d597eb5$var$mediaResult?.getAudioTracks().forEach((track)=>{
|
|
8234
|
+
track.stop();
|
|
8235
|
+
});
|
|
8236
|
+
$c3d5253d9d597eb5$var$mediaResult = undefined;
|
|
8237
|
+
};
|
|
8238
|
+
const $c3d5253d9d597eb5$export$494039379563c94d = async ()=>{
|
|
7200
8239
|
try {
|
|
7201
8240
|
const audioObject = new Audio($c3d5253d9d597eb5$var$audioURL);
|
|
7202
8241
|
await audioObject.play();
|
|
7203
8242
|
} catch (err) {
|
|
7204
8243
|
console.warn("User interaction is required, asking audio GUM");
|
|
7205
|
-
await navigator.mediaDevices.getUserMedia({
|
|
8244
|
+
$c3d5253d9d597eb5$var$mediaResult = await navigator.mediaDevices.getUserMedia({
|
|
7206
8245
|
audio: true
|
|
7207
8246
|
});
|
|
7208
8247
|
}
|
|
@@ -7275,6 +8314,7 @@ const $e3bb2c5d0e5b45b5$export$914ddf2021ea8ee6 = (0, ($parcel$interopDefault($j
|
|
|
7275
8314
|
|
|
7276
8315
|
|
|
7277
8316
|
|
|
8317
|
+
|
|
7278
8318
|
const $ee8cb448c2c74888$var$currentTheme = (0, $9295e87e6b93e693$export$3bfd0d5209a8006a)();
|
|
7279
8319
|
const $ee8cb448c2c74888$var$currentLanguage = (0, $54c346ed2df7d69f$export$604ba5624273df44)();
|
|
7280
8320
|
let $ee8cb448c2c74888$var$timestampCriticalError = -1;
|
|
@@ -7296,14 +8336,14 @@ const $ee8cb448c2c74888$var$StreamUI = ({ options: options })=>{
|
|
|
7296
8336
|
const [screensharing, setScreensharing] = (0, $jQDcL$react.useState)(false);
|
|
7297
8337
|
const [isAgent, setIsAgent] = (0, $jQDcL$react.useState)(false);
|
|
7298
8338
|
const [userInteractionTriggered, setUserInteractionTriggered] = (0, $jQDcL$react.useState)(false);
|
|
7299
|
-
const [
|
|
7300
|
-
const orientation =
|
|
8339
|
+
const [containerWidth, containerHeight] = (0, $56e1e7a85d8bf4bb$export$2b86bedf890eab8)(streamUIContainerRef.current);
|
|
8340
|
+
const orientation = containerWidth > containerHeight ? "landscape" : "portrait";
|
|
7301
8341
|
const styledTheme = theme === "dark" ? (0, $9295e87e6b93e693$export$3e936a8db52a10a0) : (0, $9295e87e6b93e693$export$f30cb9bc4f736419);
|
|
7302
8342
|
const onEnterRoom = async (event)=>{
|
|
7303
|
-
const
|
|
8343
|
+
const peerId = event.detail.peerId;
|
|
7304
8344
|
setSelfPeerId(peerId);
|
|
7305
8345
|
try {
|
|
7306
|
-
await (0, $c3d5253d9d597eb5$export$
|
|
8346
|
+
await (0, $c3d5253d9d597eb5$export$494039379563c94d)();
|
|
7307
8347
|
setUserInteractionTriggered(true);
|
|
7308
8348
|
} catch (userInteractionError) {
|
|
7309
8349
|
console.error("User interaction trigger failed", userInteractionError);
|
|
@@ -7330,6 +8370,7 @@ const $ee8cb448c2c74888$var$StreamUI = ({ options: options })=>{
|
|
|
7330
8370
|
setSelfDisplayName(displayName);
|
|
7331
8371
|
};
|
|
7332
8372
|
const onCallEnd = ()=>{
|
|
8373
|
+
(0, $c3d5253d9d597eb5$export$716eeec86fd18da7)();
|
|
7333
8374
|
setStreamState("ended");
|
|
7334
8375
|
setMuted(true);
|
|
7335
8376
|
setStreaming(false);
|
|
@@ -7337,6 +8378,7 @@ const $ee8cb448c2c74888$var$StreamUI = ({ options: options })=>{
|
|
|
7337
8378
|
setUserInteractionTriggered(false);
|
|
7338
8379
|
};
|
|
7339
8380
|
const onCallTerminated = ()=>{
|
|
8381
|
+
(0, $c3d5253d9d597eb5$export$716eeec86fd18da7)();
|
|
7340
8382
|
setStreamState("terminated");
|
|
7341
8383
|
};
|
|
7342
8384
|
const onInvalidRoom = ()=>{
|
|
@@ -7384,37 +8426,37 @@ const $ee8cb448c2c74888$var$StreamUI = ({ options: options })=>{
|
|
|
7384
8426
|
language
|
|
7385
8427
|
]);
|
|
7386
8428
|
(0, $jQDcL$react.useEffect)(()=>{
|
|
7387
|
-
|
|
7388
|
-
|
|
7389
|
-
|
|
7390
|
-
|
|
7391
|
-
|
|
7392
|
-
|
|
7393
|
-
|
|
7394
|
-
|
|
7395
|
-
|
|
7396
|
-
|
|
7397
|
-
|
|
7398
|
-
|
|
7399
|
-
|
|
7400
|
-
|
|
7401
|
-
|
|
8429
|
+
(0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).addEventListener("enterRoom", onEnterRoom);
|
|
8430
|
+
(0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).addEventListener("localVideoAvailable", onWebcamUpdate);
|
|
8431
|
+
(0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).addEventListener("localVideoUnavailable", onWebcamUpdate);
|
|
8432
|
+
(0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).addEventListener("screenshareEnabled", onScreenshareUpdate);
|
|
8433
|
+
(0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).addEventListener("screenshareDisabled", onScreenshareUpdate);
|
|
8434
|
+
(0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).addEventListener("microphoneEnabled", onMicrophoneUpdate);
|
|
8435
|
+
(0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).addEventListener("microphoneMute", onMicrophoneUpdate);
|
|
8436
|
+
(0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).addEventListener("microphoneUnmute", onMicrophoneUpdate);
|
|
8437
|
+
(0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).addEventListener("defaultAudioDeviceChange", onDefaultAudioDeviceChange);
|
|
8438
|
+
(0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).addEventListener("selfDisplayName", onSelfDisplayNameUpdate);
|
|
8439
|
+
(0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).addEventListener("terminateRoom", onCallTerminated);
|
|
8440
|
+
(0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).addEventListener("leaveRoom", onCallEnd);
|
|
8441
|
+
(0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).addEventListener("invalidRoom", onInvalidRoom);
|
|
8442
|
+
(0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).addEventListener("agentIdentity", onAgentIdentity);
|
|
8443
|
+
(0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).addEventListener("criticalError", onCriticalError);
|
|
7402
8444
|
return ()=>{
|
|
7403
|
-
|
|
7404
|
-
|
|
7405
|
-
|
|
7406
|
-
|
|
7407
|
-
|
|
7408
|
-
|
|
7409
|
-
|
|
7410
|
-
|
|
7411
|
-
|
|
7412
|
-
|
|
7413
|
-
|
|
7414
|
-
|
|
7415
|
-
|
|
7416
|
-
|
|
7417
|
-
|
|
8445
|
+
(0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).removeEventListener("enterRoom", onEnterRoom);
|
|
8446
|
+
(0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).removeEventListener("localVideoAvailable", onWebcamUpdate);
|
|
8447
|
+
(0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).removeEventListener("localVideoUnavailable", onWebcamUpdate);
|
|
8448
|
+
(0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).removeEventListener("screenshareEnabled", onScreenshareUpdate);
|
|
8449
|
+
(0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).removeEventListener("screenshareDisabled", onScreenshareUpdate);
|
|
8450
|
+
(0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).removeEventListener("microphoneEnabled", onMicrophoneUpdate);
|
|
8451
|
+
(0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).removeEventListener("microphoneMute", onMicrophoneUpdate);
|
|
8452
|
+
(0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).removeEventListener("microphoneUnmute", onMicrophoneUpdate);
|
|
8453
|
+
(0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).removeEventListener("defaultAudioDeviceChange", onDefaultAudioDeviceChange);
|
|
8454
|
+
(0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).removeEventListener("selfDisplayName", onSelfDisplayNameUpdate);
|
|
8455
|
+
(0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).removeEventListener("terminateRoom", onCallTerminated);
|
|
8456
|
+
(0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).removeEventListener("leaveRoom", onCallEnd);
|
|
8457
|
+
(0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).removeEventListener("invalidRoom", onInvalidRoom);
|
|
8458
|
+
(0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).removeEventListener("agentIdentity", onAgentIdentity);
|
|
8459
|
+
(0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).removeEventListener("criticalError", onCriticalError);
|
|
7418
8460
|
};
|
|
7419
8461
|
}, []);
|
|
7420
8462
|
return /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)((0, $8b39f32976a7698a$export$2e2bcd8739ae039).Provider, {
|
|
@@ -7514,10 +8556,13 @@ const $e68207026aca356b$export$3f94917203ab7078 = {
|
|
|
7514
8556
|
window.dispatchEvent(event);
|
|
7515
8557
|
},
|
|
7516
8558
|
sendNotification: $84c6cbcbb594d072$export$3a57e165650c636f,
|
|
7517
|
-
joinRoom: (
|
|
7518
|
-
leaveRoom: (
|
|
7519
|
-
terminateRoom: (
|
|
7520
|
-
generateToken: (
|
|
8559
|
+
joinRoom: (0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).init.bind((0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2)),
|
|
8560
|
+
leaveRoom: (0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).endCall.bind((0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2)),
|
|
8561
|
+
terminateRoom: (0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).terminateRoom.bind((0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2)),
|
|
8562
|
+
generateToken: (0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).generateToken.bind((0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2)),
|
|
8563
|
+
addEventListener: (0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).addEventListener.bind((0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2)),
|
|
8564
|
+
dispatchEvent: (0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).dispatchEvent.bind((0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2)),
|
|
8565
|
+
getState: (0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).getState.bind((0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2))
|
|
7521
8566
|
};
|
|
7522
8567
|
window.streamUI = $e68207026aca356b$export$3f94917203ab7078;
|
|
7523
8568
|
// Backward compatibility
|