@100mslive/roomkit-react 0.1.2-alpha.1 → 0.1.3
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/{ActiveSpeakerView-N7C6WL27.js → ActiveSpeakerView-CLXH5CT7.js} +6 -6
- package/dist/{ActiveSpeakerView-ZOCC7LQW.css → ActiveSpeakerView-KIIG3P3H.css} +2 -2
- package/dist/{PinnedTrackView-RIL5IW5A.css.map → ActiveSpeakerView-KIIG3P3H.css.map} +1 -1
- package/dist/{HLSView-OVDMVJX5.css → HLSView-2BZD2FSZ.css} +2 -2
- package/dist/{HLSView-OVDMVJX5.css.map → HLSView-2BZD2FSZ.css.map} +1 -1
- package/dist/{HLSView-3ILTIGBT.js → HLSView-RIXB2GY3.js} +5 -5
- package/dist/{PinnedTrackView-RIL5IW5A.css → PinnedTrackView-IKIDDCHG.css} +2 -2
- package/dist/{conference-AIOOA5ON.css.map → PinnedTrackView-IKIDDCHG.css.map} +1 -1
- package/dist/{PinnedTrackView-6N6N5WOF.js → PinnedTrackView-ZGNZXO4J.js} +6 -6
- package/dist/{VirtualBackground-R3JHARN5.js → VirtualBackground-PPX7DVS3.js} +3 -3
- package/dist/{chunk-G56Z3JA5.js → chunk-CIV5V5QF.js} +116 -126
- package/dist/chunk-CIV5V5QF.js.map +7 -0
- package/dist/{chunk-DH3QSV4E.js → chunk-E7WZYH2U.js} +3 -3
- package/dist/chunk-E7WZYH2U.js.map +7 -0
- package/dist/{chunk-DRKV2LAC.js → chunk-G24GH7QG.js} +7 -6
- package/dist/chunk-G24GH7QG.js.map +7 -0
- package/dist/{chunk-INRXWU7L.js → chunk-GEPWMIT4.js} +2 -2
- package/dist/{chunk-TZJCHZPD.js → chunk-LMSP5ETL.js} +594 -581
- package/dist/chunk-LMSP5ETL.js.map +7 -0
- package/dist/{conference-AIOOA5ON.css → conference-IQN7SXQI.css} +2 -2
- package/dist/{ActiveSpeakerView-ZOCC7LQW.css.map → conference-IQN7SXQI.css.map} +1 -1
- package/dist/{conference-IKSFGLVK.js → conference-ORQKXGY3.js} +11 -11
- package/dist/index.cjs.css +1 -1
- package/dist/index.cjs.css.map +1 -1
- package/dist/index.cjs.js +951 -953
- package/dist/index.cjs.js.map +3 -3
- package/dist/index.css +1 -1
- package/dist/index.css.map +1 -1
- package/dist/index.js +4 -4
- package/dist/meta.cjs.json +72 -54
- package/dist/meta.esbuild.json +160 -142
- package/dist/{transcription-XYVVYRAS.js → transcription-ETHBK5TS.js} +3 -3
- package/package.json +7 -7
- package/src/Button/Button.tsx +6 -2
- package/src/Loading/Loading.tsx +1 -1
- package/src/Prebuilt/App.jsx +4 -1
- package/src/Prebuilt/Prebuilt.stories.tsx +4 -0
- package/src/Prebuilt/components/AppData/useUISettings.js +6 -2
- package/src/Prebuilt/components/Chip.jsx +1 -0
- package/src/Prebuilt/components/IconButtonWithOptions/IconButtonWithOptions.jsx +1 -0
- package/src/Prebuilt/components/Notifications/PeerNotifications.jsx +2 -1
- package/src/Prebuilt/components/Notifications/PermissionErrorModal.jsx +13 -44
- package/src/Prebuilt/components/Preview/PreviewContainer.jsx +4 -1
- package/src/Prebuilt/components/Preview/PreviewForm.jsx +5 -7
- package/src/Prebuilt/components/Preview/PreviewJoin.jsx +9 -5
- package/src/Prebuilt/components/TileMenu.jsx +10 -17
- package/src/Theme/base.config.ts +3 -3
- package/src/Theme/stitches.config.ts +2 -1
- package/src/VideoTile/StyledVideoTile.tsx +1 -1
- package/dist/chunk-DH3QSV4E.js.map +0 -7
- package/dist/chunk-DRKV2LAC.js.map +0 -7
- package/dist/chunk-G56Z3JA5.js.map +0 -7
- package/dist/chunk-TZJCHZPD.js.map +0 -7
- package/src/assets/android-perm-0.png +0 -0
- /package/dist/{ActiveSpeakerView-N7C6WL27.js.map → ActiveSpeakerView-CLXH5CT7.js.map} +0 -0
- /package/dist/{HLSView-3ILTIGBT.js.map → HLSView-RIXB2GY3.js.map} +0 -0
- /package/dist/{PinnedTrackView-6N6N5WOF.js.map → PinnedTrackView-ZGNZXO4J.js.map} +0 -0
- /package/dist/{VirtualBackground-R3JHARN5.js.map → VirtualBackground-PPX7DVS3.js.map} +0 -0
- /package/dist/{chunk-INRXWU7L.js.map → chunk-GEPWMIT4.js.map} +0 -0
- /package/dist/{conference-IKSFGLVK.js.map → conference-ORQKXGY3.js.map} +0 -0
- /package/dist/{transcription-XYVVYRAS.js.map → transcription-ETHBK5TS.js.map} +0 -0
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import {
|
|
2
2
|
Loading,
|
|
3
3
|
useIsFeatureEnabled
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-E7WZYH2U.js";
|
|
5
5
|
import {
|
|
6
6
|
Box,
|
|
7
7
|
Flex,
|
|
8
8
|
Text
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-GEPWMIT4.js";
|
|
10
10
|
import {
|
|
11
11
|
APP_DATA,
|
|
12
12
|
CHAT_SELECTOR,
|
|
@@ -66,7 +66,7 @@ import {
|
|
|
66
66
|
textEllipsis,
|
|
67
67
|
theme,
|
|
68
68
|
toastAnimation
|
|
69
|
-
} from "./chunk-
|
|
69
|
+
} from "./chunk-G24GH7QG.js";
|
|
70
70
|
|
|
71
71
|
// src/index.ts
|
|
72
72
|
init_define_process_env();
|
|
@@ -76,11 +76,11 @@ init_define_process_env();
|
|
|
76
76
|
|
|
77
77
|
// src/Button/Button.tsx
|
|
78
78
|
init_define_process_env();
|
|
79
|
-
import
|
|
79
|
+
import React2 from "react";
|
|
80
80
|
|
|
81
81
|
// src/Theme/ThemeProvider.tsx
|
|
82
82
|
init_define_process_env();
|
|
83
|
-
import
|
|
83
|
+
import React, { useCallback, useEffect as useEffect2, useMemo, useRef, useState as useState2 } from "react";
|
|
84
84
|
|
|
85
85
|
// src/Theme/useSSR.tsx
|
|
86
86
|
init_define_process_env();
|
|
@@ -117,7 +117,7 @@ var defaultContext = {
|
|
|
117
117
|
return;
|
|
118
118
|
}
|
|
119
119
|
};
|
|
120
|
-
var ThemeContext =
|
|
120
|
+
var ThemeContext = React.createContext(defaultContext);
|
|
121
121
|
var HMSThemeProvider = ({
|
|
122
122
|
themeType,
|
|
123
123
|
theme: userTheme,
|
|
@@ -155,7 +155,7 @@ var HMSThemeProvider = ({
|
|
|
155
155
|
setCurrentTheme(themeType);
|
|
156
156
|
}
|
|
157
157
|
}, [themeType]);
|
|
158
|
-
return /* @__PURE__ */
|
|
158
|
+
return /* @__PURE__ */ React.createElement(
|
|
159
159
|
ThemeContext.Provider,
|
|
160
160
|
{
|
|
161
161
|
value: { themeType: currentTheme, theme: updatedTheme, aspectRatio, toggleTheme }
|
|
@@ -163,7 +163,7 @@ var HMSThemeProvider = ({
|
|
|
163
163
|
children
|
|
164
164
|
);
|
|
165
165
|
};
|
|
166
|
-
var useTheme = () =>
|
|
166
|
+
var useTheme = () => React.useContext(ThemeContext);
|
|
167
167
|
|
|
168
168
|
// src/Button/Button.tsx
|
|
169
169
|
var getOutlinedVariants = (base, hover, active, disabled, text, textDisabled) => {
|
|
@@ -312,9 +312,17 @@ var StyledButton = styled("button", __spreadProps(__spreadValues({}, flexCenter)
|
|
|
312
312
|
variant: "primary"
|
|
313
313
|
}
|
|
314
314
|
}));
|
|
315
|
-
var Button =
|
|
315
|
+
var Button = React2.forwardRef((_a, ref) => {
|
|
316
316
|
var _b = _a, { children, loading = false, icon } = _b, buttonProps = __objRest(_b, ["children", "loading", "icon"]);
|
|
317
|
-
return /* @__PURE__ */
|
|
317
|
+
return /* @__PURE__ */ React2.createElement(StyledButton, __spreadProps(__spreadValues({}, buttonProps), { ref }), /* @__PURE__ */ React2.createElement(React2.Fragment, null, loading && /* @__PURE__ */ React2.createElement(
|
|
318
|
+
Flex,
|
|
319
|
+
{
|
|
320
|
+
align: "center",
|
|
321
|
+
justify: "center",
|
|
322
|
+
css: { w: "100%", position: "absolute", left: "0", color: "$on_primary_low" }
|
|
323
|
+
},
|
|
324
|
+
/* @__PURE__ */ React2.createElement(Loading, { color: "currentColor" })
|
|
325
|
+
), /* @__PURE__ */ React2.createElement(
|
|
318
326
|
Flex,
|
|
319
327
|
{
|
|
320
328
|
align: "center",
|
|
@@ -330,7 +338,7 @@ init_define_process_env();
|
|
|
330
338
|
|
|
331
339
|
// src/Avatar/Avatar.tsx
|
|
332
340
|
init_define_process_env();
|
|
333
|
-
import
|
|
341
|
+
import React3 from "react";
|
|
334
342
|
import { PersonIcon } from "@100mslive/react-icons";
|
|
335
343
|
|
|
336
344
|
// src/Avatar/getAvatarBg.ts
|
|
@@ -413,7 +421,7 @@ var Avatar = (_a) => {
|
|
|
413
421
|
if (!name) {
|
|
414
422
|
color = "#7E47EB";
|
|
415
423
|
}
|
|
416
|
-
return /* @__PURE__ */
|
|
424
|
+
return /* @__PURE__ */ React3.createElement(StyledAvatar, __spreadValues({ css: __spreadValues({ bg: color }, css2) }, props), initials || /* @__PURE__ */ React3.createElement(PersonIcon, { height: 40, width: 40 }));
|
|
417
425
|
};
|
|
418
426
|
|
|
419
427
|
// src/Divider/index.ts
|
|
@@ -468,7 +476,7 @@ init_define_process_env();
|
|
|
468
476
|
|
|
469
477
|
// src/Switch/Switch.tsx
|
|
470
478
|
init_define_process_env();
|
|
471
|
-
import
|
|
479
|
+
import React4 from "react";
|
|
472
480
|
import * as BaseSwitch from "@radix-ui/react-switch";
|
|
473
481
|
var SwitchRoot = styled(BaseSwitch.Root, {
|
|
474
482
|
all: "unset",
|
|
@@ -507,7 +515,7 @@ var SwitchThumb = styled(BaseSwitch.Thumb, {
|
|
|
507
515
|
backgroundColor: "$on_primary_high"
|
|
508
516
|
}
|
|
509
517
|
});
|
|
510
|
-
var Switch = (props) => /* @__PURE__ */
|
|
518
|
+
var Switch = (props) => /* @__PURE__ */ React4.createElement(SwitchRoot, __spreadValues({}, props), /* @__PURE__ */ React4.createElement(SwitchThumb, null));
|
|
511
519
|
Switch.displayName = "Switch";
|
|
512
520
|
|
|
513
521
|
// src/Select/index.ts
|
|
@@ -515,7 +523,7 @@ init_define_process_env();
|
|
|
515
523
|
|
|
516
524
|
// src/Select/Select.tsx
|
|
517
525
|
init_define_process_env();
|
|
518
|
-
import
|
|
526
|
+
import React5 from "react";
|
|
519
527
|
import { ChevronDownIcon } from "@100mslive/react-icons";
|
|
520
528
|
var Root2 = styled("div", {
|
|
521
529
|
color: "$on_primary_high",
|
|
@@ -562,7 +570,7 @@ var Arrow = styled("span", {
|
|
|
562
570
|
});
|
|
563
571
|
var DefaultDownIcon = (_a) => {
|
|
564
572
|
var props = __objRest(_a, []);
|
|
565
|
-
return /* @__PURE__ */
|
|
573
|
+
return /* @__PURE__ */ React5.createElement(Arrow, __spreadValues({}, props), /* @__PURE__ */ React5.createElement(ChevronDownIcon, null));
|
|
566
574
|
};
|
|
567
575
|
var Select = {
|
|
568
576
|
Root: Root2,
|
|
@@ -576,7 +584,7 @@ init_define_process_env();
|
|
|
576
584
|
|
|
577
585
|
// src/Slider/Slider.tsx
|
|
578
586
|
init_define_process_env();
|
|
579
|
-
import
|
|
587
|
+
import React6 from "react";
|
|
580
588
|
import * as BaseSlider from "@radix-ui/react-slider";
|
|
581
589
|
var Root4 = styled(BaseSlider.Root, {
|
|
582
590
|
position: "relative",
|
|
@@ -624,7 +632,7 @@ var Slider = (_a) => {
|
|
|
624
632
|
"thumbStyles"
|
|
625
633
|
]);
|
|
626
634
|
var _a2;
|
|
627
|
-
return /* @__PURE__ */
|
|
635
|
+
return /* @__PURE__ */ React6.createElement(Root4, __spreadValues({}, props), /* @__PURE__ */ React6.createElement(Track2, null, /* @__PURE__ */ React6.createElement(Range2, null)), showTooltip ? /* @__PURE__ */ React6.createElement(Tooltip, { title: String((_a2 = props.value) == null ? void 0 : _a2[0]) }, /* @__PURE__ */ React6.createElement(Thumb3, { css: thumbStyles })) : /* @__PURE__ */ React6.createElement(Thumb3, { css: thumbStyles }));
|
|
628
636
|
};
|
|
629
637
|
|
|
630
638
|
// src/Modal/index.ts
|
|
@@ -637,7 +645,7 @@ import { styled as styled2 } from "@stitches/react";
|
|
|
637
645
|
|
|
638
646
|
// src/Modal/DialogContent.tsx
|
|
639
647
|
init_define_process_env();
|
|
640
|
-
import
|
|
648
|
+
import React7 from "react";
|
|
641
649
|
import * as DialogPrimitive from "@radix-ui/react-dialog";
|
|
642
650
|
import { CrossIcon } from "@100mslive/react-icons";
|
|
643
651
|
var DialogClose = styled(DialogPrimitive.Close, {
|
|
@@ -683,7 +691,7 @@ var DialogTitle = styled(DialogPrimitive.Title, {
|
|
|
683
691
|
margin: 0
|
|
684
692
|
});
|
|
685
693
|
var DialogDescription = styled(DialogPrimitive.Description, {});
|
|
686
|
-
var DialogDefaultCloseIcon = (props) => /* @__PURE__ */
|
|
694
|
+
var DialogDefaultCloseIcon = (props) => /* @__PURE__ */ React7.createElement(DialogClose, { asChild: true }, /* @__PURE__ */ React7.createElement(IconButton, __spreadValues({}, props), /* @__PURE__ */ React7.createElement(CrossIcon, null)));
|
|
687
695
|
|
|
688
696
|
// src/Modal/Dialog.tsx
|
|
689
697
|
var StyledDialog = styled2(Root5, {});
|
|
@@ -701,7 +709,7 @@ var Dialog = {
|
|
|
701
709
|
|
|
702
710
|
// src/Input/Input.tsx
|
|
703
711
|
init_define_process_env();
|
|
704
|
-
import
|
|
712
|
+
import React8 from "react";
|
|
705
713
|
import { CopyIcon, EyeCloseIcon, EyeOpenIcon } from "@100mslive/react-icons";
|
|
706
714
|
var Input = styled("input", {
|
|
707
715
|
fontFamily: "$sans",
|
|
@@ -744,16 +752,16 @@ var PasswordShowIcon = (_a) => {
|
|
|
744
752
|
"showPassword",
|
|
745
753
|
"css"
|
|
746
754
|
]);
|
|
747
|
-
return /* @__PURE__ */
|
|
755
|
+
return /* @__PURE__ */ React8.createElement(Flex, __spreadValues({ css: __spreadValues({}, css2) }, props), showPassword ? /* @__PURE__ */ React8.createElement(EyeOpenIcon, null) : /* @__PURE__ */ React8.createElement(EyeCloseIcon, null));
|
|
748
756
|
};
|
|
749
757
|
var PasswordCopyIcon = (_a) => {
|
|
750
758
|
var _b = _a, { css: css2 } = _b, props = __objRest(_b, ["css"]);
|
|
751
|
-
return /* @__PURE__ */
|
|
759
|
+
return /* @__PURE__ */ React8.createElement(Flex, __spreadValues({ css: __spreadValues({}, css2) }, props), /* @__PURE__ */ React8.createElement(CopyIcon, null));
|
|
752
760
|
};
|
|
753
|
-
var PasswordIcons =
|
|
761
|
+
var PasswordIcons = React8.forwardRef(
|
|
754
762
|
(_a, ref) => {
|
|
755
763
|
var _b = _a, { css: css2 } = _b, props = __objRest(_b, ["css"]);
|
|
756
|
-
return /* @__PURE__ */
|
|
764
|
+
return /* @__PURE__ */ React8.createElement(
|
|
757
765
|
Flex,
|
|
758
766
|
__spreadValues({
|
|
759
767
|
css: __spreadValues({
|
|
@@ -771,9 +779,9 @@ var PasswordIcons = React9.forwardRef(
|
|
|
771
779
|
);
|
|
772
780
|
}
|
|
773
781
|
);
|
|
774
|
-
var ReactInput =
|
|
782
|
+
var ReactInput = React8.forwardRef((_a, ref) => {
|
|
775
783
|
var _b = _a, { showPassword = false, css: css2 } = _b, props = __objRest(_b, ["showPassword", "css"]);
|
|
776
|
-
return /* @__PURE__ */
|
|
784
|
+
return /* @__PURE__ */ React8.createElement(
|
|
777
785
|
Input,
|
|
778
786
|
__spreadProps(__spreadValues({
|
|
779
787
|
css: __spreadValues({ flexGrow: 1, width: "100%" }, css2),
|
|
@@ -811,7 +819,7 @@ var Container = styled("div", {
|
|
|
811
819
|
display: "flex",
|
|
812
820
|
justifyContent: "center",
|
|
813
821
|
alignItems: "center",
|
|
814
|
-
background: "$
|
|
822
|
+
background: "$background_default",
|
|
815
823
|
variants: {
|
|
816
824
|
transparentBg: {
|
|
817
825
|
true: {
|
|
@@ -1172,7 +1180,7 @@ init_define_process_env();
|
|
|
1172
1180
|
|
|
1173
1181
|
// src/Video/Video.tsx
|
|
1174
1182
|
init_define_process_env();
|
|
1175
|
-
import
|
|
1183
|
+
import React9 from "react";
|
|
1176
1184
|
import { useVideo } from "@100mslive/react-sdk";
|
|
1177
1185
|
var StyledVideo = styled("video", {
|
|
1178
1186
|
width: "100%",
|
|
@@ -1214,7 +1222,7 @@ var StyledVideo = styled("video", {
|
|
|
1214
1222
|
var Video = (_a) => {
|
|
1215
1223
|
var _b = _a, { trackId, attach } = _b, props = __objRest(_b, ["trackId", "attach"]);
|
|
1216
1224
|
const { videoRef } = useVideo({ trackId, attach });
|
|
1217
|
-
return /* @__PURE__ */
|
|
1225
|
+
return /* @__PURE__ */ React9.createElement(StyledVideo, __spreadValues({ autoPlay: true, muted: true, playsInline: true, controls: false, ref: videoRef }, props));
|
|
1218
1226
|
};
|
|
1219
1227
|
|
|
1220
1228
|
// src/TileMenu/index.tsx
|
|
@@ -1359,7 +1367,7 @@ init_define_process_env();
|
|
|
1359
1367
|
|
|
1360
1368
|
// src/Stats/Stats.tsx
|
|
1361
1369
|
init_define_process_env();
|
|
1362
|
-
import
|
|
1370
|
+
import React10, { Fragment } from "react";
|
|
1363
1371
|
import {
|
|
1364
1372
|
selectConnectionQualityByPeerID,
|
|
1365
1373
|
selectHMSStats,
|
|
@@ -1441,7 +1449,7 @@ function VideoTileStats({ videoTrackID, audioTrackID, peerID, isLocal = false })
|
|
|
1441
1449
|
if (!(audioTrackStats || videoTrackStats)) {
|
|
1442
1450
|
return null;
|
|
1443
1451
|
}
|
|
1444
|
-
return /* @__PURE__ */
|
|
1452
|
+
return /* @__PURE__ */ React10.createElement(Stats.Root, null, /* @__PURE__ */ React10.createElement("table", null, /* @__PURE__ */ React10.createElement("tbody", null, isLocal ? /* @__PURE__ */ React10.createElement(Fragment, null, /* @__PURE__ */ React10.createElement(
|
|
1445
1453
|
StatsRow,
|
|
1446
1454
|
{
|
|
1447
1455
|
show: isNotNullishAndNot0(availableOutgoingBitrate),
|
|
@@ -1455,71 +1463,71 @@ function VideoTileStats({ videoTrackID, audioTrackID, peerID, isLocal = false })
|
|
|
1455
1463
|
return null;
|
|
1456
1464
|
}
|
|
1457
1465
|
const layer = stat.rid ? simulcastMapping[stat.rid] : "";
|
|
1458
|
-
return /* @__PURE__ */
|
|
1466
|
+
return /* @__PURE__ */ React10.createElement(Fragment, null, layer && /* @__PURE__ */ React10.createElement(StatsRow, { label: layer.toUpperCase(), value: "" }), /* @__PURE__ */ React10.createElement(
|
|
1459
1467
|
StatsRow,
|
|
1460
1468
|
{
|
|
1461
1469
|
show: isNotNullishAndNot0(stat.frameWidth),
|
|
1462
1470
|
label: "Width",
|
|
1463
1471
|
value: (_a2 = stat.frameWidth) == null ? void 0 : _a2.toString()
|
|
1464
1472
|
}
|
|
1465
|
-
), /* @__PURE__ */
|
|
1473
|
+
), /* @__PURE__ */ React10.createElement(
|
|
1466
1474
|
StatsRow,
|
|
1467
1475
|
{
|
|
1468
1476
|
show: isNotNullishAndNot0(stat.frameHeight),
|
|
1469
1477
|
label: "Height",
|
|
1470
1478
|
value: (_b2 = stat.frameHeight) == null ? void 0 : _b2.toString()
|
|
1471
1479
|
}
|
|
1472
|
-
), /* @__PURE__ */
|
|
1480
|
+
), /* @__PURE__ */ React10.createElement(
|
|
1473
1481
|
StatsRow,
|
|
1474
1482
|
{
|
|
1475
1483
|
show: isNotNullishAndNot0(stat.framesPerSecond),
|
|
1476
1484
|
label: "FPS",
|
|
1477
1485
|
value: `${stat.framesPerSecond} ${isNotNullishAndNot0(stat.framesDropped) ? `(${stat.framesDropped} dropped)` : ""}`
|
|
1478
1486
|
}
|
|
1479
|
-
), /* @__PURE__ */
|
|
1487
|
+
), /* @__PURE__ */ React10.createElement(
|
|
1480
1488
|
StatsRow,
|
|
1481
1489
|
{
|
|
1482
1490
|
show: isNotNullish(stat.bitrate),
|
|
1483
1491
|
label: "Bitrate(V)",
|
|
1484
1492
|
value: formatBytes(stat.bitrate, "b/s")
|
|
1485
1493
|
}
|
|
1486
|
-
), /* @__PURE__ */
|
|
1487
|
-
})) : /* @__PURE__ */
|
|
1494
|
+
), /* @__PURE__ */ React10.createElement(Stats.Gap, null));
|
|
1495
|
+
})) : /* @__PURE__ */ React10.createElement(Fragment, null, /* @__PURE__ */ React10.createElement(
|
|
1488
1496
|
StatsRow,
|
|
1489
1497
|
{
|
|
1490
1498
|
show: isNotNullishAndNot0(videoTrackStats == null ? void 0 : videoTrackStats.frameWidth),
|
|
1491
1499
|
label: "Width",
|
|
1492
1500
|
value: (_b = videoTrackStats == null ? void 0 : videoTrackStats.frameWidth) == null ? void 0 : _b.toString()
|
|
1493
1501
|
}
|
|
1494
|
-
), /* @__PURE__ */
|
|
1502
|
+
), /* @__PURE__ */ React10.createElement(
|
|
1495
1503
|
StatsRow,
|
|
1496
1504
|
{
|
|
1497
1505
|
show: isNotNullishAndNot0(videoTrackStats == null ? void 0 : videoTrackStats.frameHeight),
|
|
1498
1506
|
label: "Height",
|
|
1499
1507
|
value: (_c = videoTrackStats == null ? void 0 : videoTrackStats.frameHeight) == null ? void 0 : _c.toString()
|
|
1500
1508
|
}
|
|
1501
|
-
), /* @__PURE__ */
|
|
1509
|
+
), /* @__PURE__ */ React10.createElement(
|
|
1502
1510
|
StatsRow,
|
|
1503
1511
|
{
|
|
1504
1512
|
show: isNotNullishAndNot0(videoTrackStats == null ? void 0 : videoTrackStats.framesPerSecond),
|
|
1505
1513
|
label: "FPS",
|
|
1506
1514
|
value: `${videoTrackStats == null ? void 0 : videoTrackStats.framesPerSecond} ${isNotNullishAndNot0(videoTrackStats == null ? void 0 : videoTrackStats.framesDropped) ? `(${videoTrackStats == null ? void 0 : videoTrackStats.framesDropped} dropped)` : ""}`
|
|
1507
1515
|
}
|
|
1508
|
-
), /* @__PURE__ */
|
|
1516
|
+
), /* @__PURE__ */ React10.createElement(
|
|
1509
1517
|
StatsRow,
|
|
1510
1518
|
{
|
|
1511
1519
|
show: isNotNullish(videoTrackStats == null ? void 0 : videoTrackStats.bitrate),
|
|
1512
1520
|
label: "Bitrate(V)",
|
|
1513
1521
|
value: formatBytes(videoTrackStats == null ? void 0 : videoTrackStats.bitrate, "b/s")
|
|
1514
1522
|
}
|
|
1515
|
-
)), /* @__PURE__ */
|
|
1523
|
+
)), /* @__PURE__ */ React10.createElement(
|
|
1516
1524
|
StatsRow,
|
|
1517
1525
|
{
|
|
1518
1526
|
show: isNotNullish(audioTrackStats == null ? void 0 : audioTrackStats.bitrate),
|
|
1519
1527
|
label: "Bitrate(A)",
|
|
1520
1528
|
value: formatBytes(audioTrackStats == null ? void 0 : audioTrackStats.bitrate, "b/s")
|
|
1521
1529
|
}
|
|
1522
|
-
), /* @__PURE__ */
|
|
1530
|
+
), /* @__PURE__ */ React10.createElement(StatsRow, { show: isNotNullish(downlinkScore), label: "Downlink", value: downlinkScore }), /* @__PURE__ */ React10.createElement(StatsRow, { show: isNotNullish(videoTrackStats == null ? void 0 : videoTrackStats.codec), label: "Codec(V)", value: videoTrackStats == null ? void 0 : videoTrackStats.codec }), /* @__PURE__ */ React10.createElement(StatsRow, { show: isNotNullish(audioTrackStats == null ? void 0 : audioTrackStats.codec), label: "Codec(A)", value: audioTrackStats == null ? void 0 : audioTrackStats.codec }), /* @__PURE__ */ React10.createElement(PacketLostAndJitter, { audioTrackStats, videoTrackStats }))));
|
|
1523
1531
|
}
|
|
1524
1532
|
var PacketLostAndJitter = ({
|
|
1525
1533
|
audioTrackStats,
|
|
@@ -1529,14 +1537,14 @@ var PacketLostAndJitter = ({
|
|
|
1529
1537
|
const isLocalPeer = (audioTrackStats == null ? void 0 : audioTrackStats.type.includes("outbound")) || (videoTrackStats == null ? void 0 : videoTrackStats.type.includes("outbound"));
|
|
1530
1538
|
const audioStats = isLocalPeer ? audioTrackStats == null ? void 0 : audioTrackStats.remote : audioTrackStats;
|
|
1531
1539
|
const videoStats = isLocalPeer ? videoTrackStats == null ? void 0 : videoTrackStats.remote : videoTrackStats;
|
|
1532
|
-
return /* @__PURE__ */
|
|
1540
|
+
return /* @__PURE__ */ React10.createElement(React10.Fragment, null, /* @__PURE__ */ React10.createElement(TrackPacketsLostRow, { label: "Packet Loss(V)", stats: videoStats }), /* @__PURE__ */ React10.createElement(TrackPacketsLostRow, { label: "Packet Loss(A)", stats: audioStats }), /* @__PURE__ */ React10.createElement(StatsRow, { show: isNotNullish(videoStats == null ? void 0 : videoStats.jitter), label: "Jitter(V)", value: (_a = videoStats == null ? void 0 : videoStats.jitter) == null ? void 0 : _a.toFixed(4) }), /* @__PURE__ */ React10.createElement(StatsRow, { show: isNotNullish(audioStats == null ? void 0 : audioStats.jitter), label: "Jitter(A)", value: (_b = audioStats == null ? void 0 : audioStats.jitter) == null ? void 0 : _b.toFixed(4) }));
|
|
1533
1541
|
};
|
|
1534
1542
|
var TrackPacketsLostRow = ({
|
|
1535
1543
|
stats,
|
|
1536
1544
|
label
|
|
1537
1545
|
}) => {
|
|
1538
1546
|
const packetsLostRate = `${(stats == null ? void 0 : stats.packetsLostRate) ? stats.packetsLostRate.toFixed(2) : 0}/s`;
|
|
1539
|
-
return /* @__PURE__ */
|
|
1547
|
+
return /* @__PURE__ */ React10.createElement(
|
|
1540
1548
|
StatsRow,
|
|
1541
1549
|
{
|
|
1542
1550
|
show: isNotNullishAndNot0(stats == null ? void 0 : stats.packetsLost),
|
|
@@ -1551,10 +1559,10 @@ var RawStatsRow = ({
|
|
|
1551
1559
|
tooltip = "",
|
|
1552
1560
|
show = true
|
|
1553
1561
|
}) => {
|
|
1554
|
-
const statsLabel = /* @__PURE__ */
|
|
1555
|
-
return /* @__PURE__ */
|
|
1562
|
+
const statsLabel = /* @__PURE__ */ React10.createElement(Stats.Label, { css: { fontWeight: !value ? "$semiBold" : "$regular" } }, label);
|
|
1563
|
+
return /* @__PURE__ */ React10.createElement(React10.Fragment, null, show ? /* @__PURE__ */ React10.createElement(Stats.Row, null, tooltip ? /* @__PURE__ */ React10.createElement(Tooltip, { side: "top", title: tooltip }, statsLabel) : statsLabel, value === "" ? /* @__PURE__ */ React10.createElement(Stats.Value, null) : /* @__PURE__ */ React10.createElement(Stats.Value, null, value)) : null);
|
|
1556
1564
|
};
|
|
1557
|
-
var StatsRow =
|
|
1565
|
+
var StatsRow = React10.memo(RawStatsRow);
|
|
1558
1566
|
function isNotNullishAndNot0(value) {
|
|
1559
1567
|
return isNotNullish(value) && value !== 0;
|
|
1560
1568
|
}
|
|
@@ -1637,7 +1645,7 @@ var RadioGroup = {
|
|
|
1637
1645
|
|
|
1638
1646
|
// src/Toast/Toast.tsx
|
|
1639
1647
|
init_define_process_env();
|
|
1640
|
-
import
|
|
1648
|
+
import React11 from "react";
|
|
1641
1649
|
import * as ToastPrimitives from "@radix-ui/react-toast";
|
|
1642
1650
|
import { CrossIcon as CrossIcon2 } from "@100mslive/react-icons";
|
|
1643
1651
|
var getToastVariant = (base) => {
|
|
@@ -1728,7 +1736,7 @@ var ToastViewport = styled(ToastPrimitives.Viewport, {
|
|
|
1728
1736
|
zIndex: 1e3
|
|
1729
1737
|
});
|
|
1730
1738
|
var DefaultClose = ({ css: css2 }) => {
|
|
1731
|
-
return /* @__PURE__ */
|
|
1739
|
+
return /* @__PURE__ */ React11.createElement(ToastClose, { css: css2, asChild: true }, /* @__PURE__ */ React11.createElement(IconButton, null, /* @__PURE__ */ React11.createElement(CrossIcon2, null)));
|
|
1732
1740
|
};
|
|
1733
1741
|
var HMSToast = (_a) => {
|
|
1734
1742
|
var _b = _a, {
|
|
@@ -1746,7 +1754,7 @@ var HMSToast = (_a) => {
|
|
|
1746
1754
|
"action",
|
|
1747
1755
|
"inlineAction"
|
|
1748
1756
|
]);
|
|
1749
|
-
return /* @__PURE__ */
|
|
1757
|
+
return /* @__PURE__ */ React11.createElement(React11.Fragment, null, /* @__PURE__ */ React11.createElement(ToastRoot, __spreadValues({}, props), /* @__PURE__ */ React11.createElement(ToastTitle, null, /* @__PURE__ */ React11.createElement(Flex, { align: "center", css: { gap: "$4", flex: "1 1 0", minWidth: 0 } }, icon ? /* @__PURE__ */ React11.createElement(Box, { css: { w: "$10", h: "$10", alignSelf: "start", mt: "$2" } }, icon) : null, /* @__PURE__ */ React11.createElement(Text, { variant: "sub1", css: { c: "inherit", wordBreak: "break-word" } }, title)), isClosable ? /* @__PURE__ */ React11.createElement(DefaultClose, null) : null, !isClosable && inlineAction && action ? /* @__PURE__ */ React11.createElement(ToastAction, { altText: `${title}Action` }, action) : null), description ? /* @__PURE__ */ React11.createElement(ToastDescription, null, /* @__PURE__ */ React11.createElement(Text, { variant: "body1", css: { fontWeight: "$regular", c: "$on_surface_medium" } }, description)) : null, !inlineAction && action ? /* @__PURE__ */ React11.createElement(ToastAction, { altText: `${title}Action`, css: { mt: "$10" } }, action) : null));
|
|
1750
1758
|
};
|
|
1751
1759
|
var Toast = {
|
|
1752
1760
|
Provider: ToastPrimitives.Provider,
|
|
@@ -1764,7 +1772,7 @@ init_define_process_env();
|
|
|
1764
1772
|
|
|
1765
1773
|
// src/Accordion/Accordion.tsx
|
|
1766
1774
|
init_define_process_env();
|
|
1767
|
-
import
|
|
1775
|
+
import React12 from "react";
|
|
1768
1776
|
import * as BaseAccordion from "@radix-ui/react-accordion";
|
|
1769
1777
|
import { ChevronUpIcon } from "@100mslive/react-icons";
|
|
1770
1778
|
var StyledAccordion = styled(BaseAccordion.Root, {});
|
|
@@ -1816,14 +1824,14 @@ var StyledChevron = styled(ChevronUpIcon, {
|
|
|
1816
1824
|
});
|
|
1817
1825
|
var AccordionRoot = StyledAccordion;
|
|
1818
1826
|
var AccordionItem = StyledItem;
|
|
1819
|
-
var AccordionHeader =
|
|
1827
|
+
var AccordionHeader = React12.forwardRef((_a, forwardedRef) => {
|
|
1820
1828
|
var _b = _a, { children, iconStyles, css: css2 } = _b, props = __objRest(_b, ["children", "iconStyles", "css"]);
|
|
1821
|
-
return /* @__PURE__ */
|
|
1829
|
+
return /* @__PURE__ */ React12.createElement(StyledHeader, { css: css2 }, /* @__PURE__ */ React12.createElement(StyledTrigger3, __spreadProps(__spreadValues({}, props), { ref: forwardedRef }), children, /* @__PURE__ */ React12.createElement(StyledChevron, { "aria-hidden": true, css: iconStyles })));
|
|
1822
1830
|
});
|
|
1823
|
-
var AccordionContent =
|
|
1831
|
+
var AccordionContent = React12.forwardRef(
|
|
1824
1832
|
(_a, forwardedRef) => {
|
|
1825
1833
|
var _b = _a, { children, contentStyles } = _b, props = __objRest(_b, ["children", "contentStyles"]);
|
|
1826
|
-
return /* @__PURE__ */
|
|
1834
|
+
return /* @__PURE__ */ React12.createElement(StyledContent3, __spreadProps(__spreadValues({}, props), { ref: forwardedRef }), /* @__PURE__ */ React12.createElement(Box, { css: contentStyles }, children));
|
|
1827
1835
|
}
|
|
1828
1836
|
);
|
|
1829
1837
|
|
|
@@ -2026,10 +2034,10 @@ var Tabs = {
|
|
|
2026
2034
|
|
|
2027
2035
|
// src/QRCode/QRCode.tsx
|
|
2028
2036
|
init_define_process_env();
|
|
2029
|
-
import
|
|
2037
|
+
import React13 from "react";
|
|
2030
2038
|
import { QRCodeSVG } from "qrcode.react";
|
|
2031
2039
|
var QRCode = (props) => {
|
|
2032
|
-
return /* @__PURE__ */
|
|
2040
|
+
return /* @__PURE__ */ React13.createElement(QRCodeSVG, __spreadValues({ style: { width: "100%", height: "100%" } }, props));
|
|
2033
2041
|
};
|
|
2034
2042
|
|
|
2035
2043
|
// src/Link/index.tsx
|
|
@@ -2037,7 +2045,7 @@ init_define_process_env();
|
|
|
2037
2045
|
|
|
2038
2046
|
// src/Link/Link.tsx
|
|
2039
2047
|
init_define_process_env();
|
|
2040
|
-
import
|
|
2048
|
+
import React14 from "react";
|
|
2041
2049
|
import * as icons from "@100mslive/react-icons";
|
|
2042
2050
|
var LinkComponent = styled("a", {
|
|
2043
2051
|
textDecoration: "none",
|
|
@@ -2063,9 +2071,9 @@ var LinkComponent = styled("a", {
|
|
|
2063
2071
|
});
|
|
2064
2072
|
var Link = (_a) => {
|
|
2065
2073
|
var _b = _a, { iconSide = "left", icon, color = "primary", children } = _b, rest = __objRest(_b, ["iconSide", "icon", "color", "children"]);
|
|
2066
|
-
const Icon2 = icon ? icons[icon] :
|
|
2067
|
-
const renderedIcon = icon ? /* @__PURE__ */
|
|
2068
|
-
return /* @__PURE__ */
|
|
2074
|
+
const Icon2 = icon ? icons[icon] : React14.Fragment;
|
|
2075
|
+
const renderedIcon = icon ? /* @__PURE__ */ React14.createElement(Flex, { as: "span" }, /* @__PURE__ */ React14.createElement(Icon2, { height: 13.33, width: 13.33 }), " ") : null;
|
|
2076
|
+
return /* @__PURE__ */ React14.createElement(LinkComponent, __spreadProps(__spreadValues({}, rest), { color }), iconSide === "left" && renderedIcon, /* @__PURE__ */ React14.createElement(Text, { as: "span", variant: "body2", css: { color: "inherit" } }, children), iconSide === "right" && renderedIcon);
|
|
2069
2077
|
};
|
|
2070
2078
|
|
|
2071
2079
|
// src/Collapsible/Collapsible.tsx
|
|
@@ -2104,7 +2112,7 @@ init_define_process_env();
|
|
|
2104
2112
|
|
|
2105
2113
|
// src/Prebuilt/App.jsx
|
|
2106
2114
|
init_define_process_env();
|
|
2107
|
-
import
|
|
2115
|
+
import React74, { Suspense as Suspense2, useEffect as useEffect35, useRef as useRef13 } from "react";
|
|
2108
2116
|
import { BrowserRouter, MemoryRouter, Navigate, Route, Routes, useParams as useParams4 } from "react-router-dom";
|
|
2109
2117
|
import {
|
|
2110
2118
|
HMSReactiveStore,
|
|
@@ -2116,7 +2124,7 @@ import {
|
|
|
2116
2124
|
|
|
2117
2125
|
// src/Prebuilt/components/AppData/AppData.jsx
|
|
2118
2126
|
init_define_process_env();
|
|
2119
|
-
import
|
|
2127
|
+
import React15, { useEffect as useEffect3 } from "react";
|
|
2120
2128
|
import { useSearchParam } from "react-use";
|
|
2121
2129
|
import {
|
|
2122
2130
|
HMSRoomState,
|
|
@@ -2258,8 +2266,10 @@ import { useCallback as useCallback4 } from "react";
|
|
|
2258
2266
|
import {
|
|
2259
2267
|
selectAppData as selectAppData2,
|
|
2260
2268
|
selectAppDataByPath,
|
|
2269
|
+
selectAudioTrackByPeerID,
|
|
2261
2270
|
selectSessionStore,
|
|
2262
2271
|
selectTrackByID,
|
|
2272
|
+
selectVideoTrackByPeerID,
|
|
2263
2273
|
useHMSActions as useHMSActions2,
|
|
2264
2274
|
useHMSStore as useHMSStore3,
|
|
2265
2275
|
useHMSVanillaStore as useHMSVanillaStore2
|
|
@@ -2311,9 +2321,12 @@ var usePDFAnnotator = () => {
|
|
|
2311
2321
|
return (_a = useHMSStore3(selectAppData2(APP_DATA.pdfConfig))) == null ? void 0 : _a.state;
|
|
2312
2322
|
};
|
|
2313
2323
|
var usePinnedTrack = () => {
|
|
2324
|
+
var _a, _b;
|
|
2314
2325
|
const pinnedTrackId = useHMSStore3(selectAppData2(APP_DATA.pinnedTrackId));
|
|
2315
|
-
const
|
|
2316
|
-
|
|
2326
|
+
const spotlightPeerId = useHMSStore3(selectSessionStore(SESSION_STORE_KEY.SPOTLIGHT));
|
|
2327
|
+
const spotlightVideoTrackId = (_a = useHMSStore3(selectVideoTrackByPeerID(spotlightPeerId))) == null ? void 0 : _a.id;
|
|
2328
|
+
const spotlightAudioTrackId = (_b = useHMSStore3(selectAudioTrackByPeerID(spotlightPeerId))) == null ? void 0 : _b.id;
|
|
2329
|
+
return useHMSStore3(selectTrackByID(pinnedTrackId || spotlightVideoTrackId || spotlightAudioTrackId));
|
|
2317
2330
|
};
|
|
2318
2331
|
var useSubscribedNotifications = (notificationKey) => {
|
|
2319
2332
|
const notificationPreference = useHMSStore3(selectAppDataByPath(APP_DATA.subscribedNotifications, notificationKey));
|
|
@@ -2451,7 +2464,7 @@ var initialAppData = {
|
|
|
2451
2464
|
[APP_DATA.dropdownList]: [],
|
|
2452
2465
|
[APP_DATA.authToken]: ""
|
|
2453
2466
|
};
|
|
2454
|
-
var AppData =
|
|
2467
|
+
var AppData = React15.memo(({ appDetails, tokenEndpoint }) => {
|
|
2455
2468
|
const hmsActions = useHMSActions3();
|
|
2456
2469
|
const isConnected = useHMSStore4(selectIsConnectedToRoom);
|
|
2457
2470
|
const sidePane = useSidepaneState();
|
|
@@ -2471,7 +2484,7 @@ var AppData = React16.memo(({ appDetails, tokenEndpoint }) => {
|
|
|
2471
2484
|
hmsActions.setFrameworkInfo({
|
|
2472
2485
|
type: "react-web",
|
|
2473
2486
|
isPrebuilt: true,
|
|
2474
|
-
version:
|
|
2487
|
+
version: React15.version
|
|
2475
2488
|
});
|
|
2476
2489
|
}, [hmsActions]);
|
|
2477
2490
|
useEffect3(() => {
|
|
@@ -2503,7 +2516,7 @@ var AppData = React16.memo(({ appDetails, tokenEndpoint }) => {
|
|
|
2503
2516
|
hmsActions.setAppData(APP_DATA.appLayout, config2[localPeerRole]);
|
|
2504
2517
|
}
|
|
2505
2518
|
}, [roleNames, rolesMap, localPeerRole, hmsActions]);
|
|
2506
|
-
return /* @__PURE__ */
|
|
2519
|
+
return /* @__PURE__ */ React15.createElement(ResetStreamingStart, null);
|
|
2507
2520
|
});
|
|
2508
2521
|
var ResetStreamingStart = () => {
|
|
2509
2522
|
const { isHLSRunning, isRTMPRunning, isBrowserRecordingOn } = useRecordingStreaming();
|
|
@@ -2607,7 +2620,7 @@ function BeamSpeakerLabelsLogging() {
|
|
|
2607
2620
|
|
|
2608
2621
|
// src/Prebuilt/components/AuthToken.jsx
|
|
2609
2622
|
init_define_process_env();
|
|
2610
|
-
import
|
|
2623
|
+
import React18, { useEffect as useEffect6, useMemo as useMemo2, useState as useState4 } from "react";
|
|
2611
2624
|
import { matchPath, useLocation } from "react-router-dom";
|
|
2612
2625
|
import { useSearchParam as useSearchParam2 } from "react-use";
|
|
2613
2626
|
import { v4 as uuid } from "uuid";
|
|
@@ -2615,8 +2628,8 @@ import { useHMSActions as useHMSActions5 } from "@100mslive/react-sdk";
|
|
|
2615
2628
|
|
|
2616
2629
|
// src/Prebuilt/AppContext.jsx
|
|
2617
2630
|
init_define_process_env();
|
|
2618
|
-
import
|
|
2619
|
-
var HMSPrebuiltContext =
|
|
2631
|
+
import React16, { useContext } from "react";
|
|
2632
|
+
var HMSPrebuiltContext = React16.createContext({
|
|
2620
2633
|
showPreview: true,
|
|
2621
2634
|
showLeave: true,
|
|
2622
2635
|
roomCode: "",
|
|
@@ -2636,15 +2649,15 @@ var useHMSPrebuiltContext = () => {
|
|
|
2636
2649
|
|
|
2637
2650
|
// src/Prebuilt/primitives/DialogContent.jsx
|
|
2638
2651
|
init_define_process_env();
|
|
2639
|
-
import
|
|
2652
|
+
import React17, { useRef as useRef3 } from "react";
|
|
2640
2653
|
import { CheckIcon, CloudUploadIcon, CrossIcon as CrossIcon3 } from "@100mslive/react-icons";
|
|
2641
2654
|
var DialogContent = (_a) => {
|
|
2642
2655
|
var _b = _a, { Icon: Icon2, title, closeable = true, children, css: css2, iconCSS = {} } = _b, props = __objRest(_b, ["Icon", "title", "closeable", "children", "css", "iconCSS"]);
|
|
2643
|
-
return /* @__PURE__ */
|
|
2656
|
+
return /* @__PURE__ */ React17.createElement(Dialog.Portal, null, /* @__PURE__ */ React17.createElement(Dialog.Overlay, null), /* @__PURE__ */ React17.createElement(Dialog.Content, __spreadValues({ css: __spreadValues({ width: "min(600px, 100%)" }, css2) }, props), /* @__PURE__ */ React17.createElement(Dialog.Title, null, /* @__PURE__ */ React17.createElement(Flex, { justify: "between" }, /* @__PURE__ */ React17.createElement(Flex, { align: "center", css: { mb: "$1" } }, Icon2 ? /* @__PURE__ */ React17.createElement(Box, { css: __spreadValues({ mr: "$2", color: "$on_primary_high" }, iconCSS) }, /* @__PURE__ */ React17.createElement(Icon2, null)) : null, /* @__PURE__ */ React17.createElement(Text, { variant: "h6", inline: true }, title)), closeable && /* @__PURE__ */ React17.createElement(Dialog.DefaultClose, { "data-testid": "dialoge_cross_icon" }))), /* @__PURE__ */ React17.createElement(HorizontalDivider, { css: { mt: "0.8rem" } }), /* @__PURE__ */ React17.createElement(Box, null, children)));
|
|
2644
2657
|
};
|
|
2645
2658
|
var ErrorDialog = (_a) => {
|
|
2646
2659
|
var _b = _a, { open = true, onOpenChange, title, children } = _b, props = __objRest(_b, ["open", "onOpenChange", "title", "children"]);
|
|
2647
|
-
return /* @__PURE__ */
|
|
2660
|
+
return /* @__PURE__ */ React17.createElement(Dialog.Root, { open, onOpenChange }, /* @__PURE__ */ React17.createElement(
|
|
2648
2661
|
DialogContent,
|
|
2649
2662
|
__spreadValues({
|
|
2650
2663
|
Icon: CrossIcon3,
|
|
@@ -2655,10 +2668,10 @@ var ErrorDialog = (_a) => {
|
|
|
2655
2668
|
closeable: false,
|
|
2656
2669
|
iconCSS: { color: "$alert_error_default" }
|
|
2657
2670
|
}, props),
|
|
2658
|
-
/* @__PURE__ */
|
|
2671
|
+
/* @__PURE__ */ React17.createElement(Box, { css: { mt: "$lg" } }, children)
|
|
2659
2672
|
));
|
|
2660
2673
|
};
|
|
2661
|
-
var RequestDialog = ({ open = true, onOpenChange, title, body, actionText = "Accept", onAction, Icon: Icon2 }) => /* @__PURE__ */
|
|
2674
|
+
var RequestDialog = ({ open = true, onOpenChange, title, body, actionText = "Accept", onAction, Icon: Icon2 }) => /* @__PURE__ */ React17.createElement(Dialog.Root, { open, onOpenChange }, /* @__PURE__ */ React17.createElement(Dialog.Portal, null, /* @__PURE__ */ React17.createElement(Dialog.Overlay, null), /* @__PURE__ */ React17.createElement(Dialog.Content, { css: { width: "min(400px,80%)", p: "$10" } }, /* @__PURE__ */ React17.createElement(Dialog.Title, { css: { p: 0, display: "flex", flexDirection: "row", gap: "$md" } }, Icon2 ? Icon2 : null, /* @__PURE__ */ React17.createElement(Text, { variant: "h6" }, title)), /* @__PURE__ */ React17.createElement(
|
|
2662
2675
|
Text,
|
|
2663
2676
|
{
|
|
2664
2677
|
variant: "md",
|
|
@@ -2670,7 +2683,7 @@ var RequestDialog = ({ open = true, onOpenChange, title, body, actionText = "Acc
|
|
|
2670
2683
|
}
|
|
2671
2684
|
},
|
|
2672
2685
|
body
|
|
2673
|
-
), /* @__PURE__ */
|
|
2686
|
+
), /* @__PURE__ */ React17.createElement(Flex, { justify: "center", align: "center", css: { width: "100%", gap: "$md" } }, /* @__PURE__ */ React17.createElement(Box, { css: { width: "50%" } }, /* @__PURE__ */ React17.createElement(Dialog.Close, { css: { width: "100%" } }, /* @__PURE__ */ React17.createElement(Button, { variant: "standard", outlined: true, css: { width: "100%" } }, "Cancel"))), /* @__PURE__ */ React17.createElement(Box, { css: { width: "50%" } }, /* @__PURE__ */ React17.createElement(Button, { variant: "primary", css: { width: "100%" }, onClick: onAction }, actionText))))));
|
|
2674
2687
|
var DialogRow = ({ children, breakSm = false, css: css2, justify = "between" }) => {
|
|
2675
2688
|
let finalCSS = {
|
|
2676
2689
|
margin: "$10 0",
|
|
@@ -2685,7 +2698,7 @@ var DialogRow = ({ children, breakSm = false, css: css2, justify = "between" })
|
|
|
2685
2698
|
if (css2) {
|
|
2686
2699
|
finalCSS = Object.assign(finalCSS, css2);
|
|
2687
2700
|
}
|
|
2688
|
-
return /* @__PURE__ */
|
|
2701
|
+
return /* @__PURE__ */ React17.createElement(Flex, { align: "center", justify, css: finalCSS }, children);
|
|
2689
2702
|
};
|
|
2690
2703
|
var DialogCol = (_a) => {
|
|
2691
2704
|
var _b = _a, { children, breakSm = false, css: css2, align = "center", justify = "between" } = _b, props = __objRest(_b, ["children", "breakSm", "css", "align", "justify"]);
|
|
@@ -2701,19 +2714,19 @@ var DialogCol = (_a) => {
|
|
|
2701
2714
|
if (css2) {
|
|
2702
2715
|
finalCSS = Object.assign(finalCSS, css2);
|
|
2703
2716
|
}
|
|
2704
|
-
return /* @__PURE__ */
|
|
2717
|
+
return /* @__PURE__ */ React17.createElement(Flex, __spreadValues({ direction: "column", align, justify, css: finalCSS }, props), children);
|
|
2705
2718
|
};
|
|
2706
2719
|
var DialogSelect = (_a) => {
|
|
2707
2720
|
var _b = _a, { title, options, keyField, labelField, selected, onChange } = _b, props = __objRest(_b, ["title", "options", "keyField", "labelField", "selected", "onChange"]);
|
|
2708
|
-
return /* @__PURE__ */
|
|
2721
|
+
return /* @__PURE__ */ React17.createElement(DialogRow, { breakSm: true }, /* @__PURE__ */ React17.createElement(Label3, null, title), /* @__PURE__ */ React17.createElement(Select.Root, __spreadValues({ "data-testid": `dialog_select_${title}`, css: { width: "70%", "@sm": { width: "100%" } } }, props), /* @__PURE__ */ React17.createElement(Select.DefaultDownIcon, null), /* @__PURE__ */ React17.createElement(Select.Select, { onChange: (e) => onChange(e.target.value), value: selected, css: { width: "100%" } }, options.map((option) => {
|
|
2709
2722
|
const id = keyField ? option[keyField] : option;
|
|
2710
2723
|
const label = labelField ? option[labelField] : option;
|
|
2711
|
-
return /* @__PURE__ */
|
|
2724
|
+
return /* @__PURE__ */ React17.createElement("option", { value: id, key: id }, label);
|
|
2712
2725
|
}))));
|
|
2713
2726
|
};
|
|
2714
2727
|
var DialogInput = (_a) => {
|
|
2715
2728
|
var _b = _a, { title, value, onChange, placeholder, disabled, type } = _b, props = __objRest(_b, ["title", "value", "onChange", "placeholder", "disabled", "type"]);
|
|
2716
|
-
return /* @__PURE__ */
|
|
2729
|
+
return /* @__PURE__ */ React17.createElement(DialogRow, { breakSm: true }, /* @__PURE__ */ React17.createElement(Label3, null, title), /* @__PURE__ */ React17.createElement(
|
|
2717
2730
|
Input,
|
|
2718
2731
|
__spreadValues({
|
|
2719
2732
|
css: { width: "70%", "@sm": { width: "100%" } },
|
|
@@ -2728,7 +2741,7 @@ var DialogInput = (_a) => {
|
|
|
2728
2741
|
var DialogInputFile = (_a) => {
|
|
2729
2742
|
var _b = _a, { value, onChange, placeholder, disabled, type } = _b, props = __objRest(_b, ["value", "onChange", "placeholder", "disabled", "type"]);
|
|
2730
2743
|
const inputRef = useRef3();
|
|
2731
|
-
return /* @__PURE__ */
|
|
2744
|
+
return /* @__PURE__ */ React17.createElement(
|
|
2732
2745
|
DialogCol,
|
|
2733
2746
|
{
|
|
2734
2747
|
breakSm: true,
|
|
@@ -2749,7 +2762,7 @@ var DialogInputFile = (_a) => {
|
|
|
2749
2762
|
},
|
|
2750
2763
|
gap: "8"
|
|
2751
2764
|
},
|
|
2752
|
-
/* @__PURE__ */
|
|
2765
|
+
/* @__PURE__ */ React17.createElement(
|
|
2753
2766
|
IconButton,
|
|
2754
2767
|
{
|
|
2755
2768
|
variant: "standard",
|
|
@@ -2763,7 +2776,7 @@ var DialogInputFile = (_a) => {
|
|
|
2763
2776
|
}
|
|
2764
2777
|
}
|
|
2765
2778
|
},
|
|
2766
|
-
/* @__PURE__ */
|
|
2779
|
+
/* @__PURE__ */ React17.createElement(
|
|
2767
2780
|
CloudUploadIcon,
|
|
2768
2781
|
{
|
|
2769
2782
|
style: {
|
|
@@ -2773,7 +2786,7 @@ var DialogInputFile = (_a) => {
|
|
|
2773
2786
|
}
|
|
2774
2787
|
)
|
|
2775
2788
|
),
|
|
2776
|
-
/* @__PURE__ */
|
|
2789
|
+
/* @__PURE__ */ React17.createElement(Flex, { direction: "row" }, /* @__PURE__ */ React17.createElement(
|
|
2777
2790
|
Input,
|
|
2778
2791
|
__spreadValues({
|
|
2779
2792
|
ref: inputRef,
|
|
@@ -2785,7 +2798,7 @@ var DialogInputFile = (_a) => {
|
|
|
2785
2798
|
type,
|
|
2786
2799
|
hidden: true
|
|
2787
2800
|
}, props)
|
|
2788
|
-
), /* @__PURE__ */
|
|
2801
|
+
), /* @__PURE__ */ React17.createElement(
|
|
2789
2802
|
IconButton,
|
|
2790
2803
|
{
|
|
2791
2804
|
variant: "standard",
|
|
@@ -2799,12 +2812,12 @@ var DialogInputFile = (_a) => {
|
|
|
2799
2812
|
}
|
|
2800
2813
|
}
|
|
2801
2814
|
},
|
|
2802
|
-
/* @__PURE__ */
|
|
2815
|
+
/* @__PURE__ */ React17.createElement(Text, { variant: "md" }, placeholder)
|
|
2803
2816
|
))
|
|
2804
2817
|
);
|
|
2805
2818
|
};
|
|
2806
2819
|
var DialogCheckbox = ({ title, value, onChange, disabled, css: css2, id }) => {
|
|
2807
|
-
return /* @__PURE__ */
|
|
2820
|
+
return /* @__PURE__ */ React17.createElement(DialogRow, { css: css2 }, /* @__PURE__ */ React17.createElement(Label3, { htmlFor: id, css: { cursor: "pointer" } }, title), /* @__PURE__ */ React17.createElement(Checkbox.Root, { checked: value, onCheckedChange: (value2) => onChange(value2), disabled, id }, /* @__PURE__ */ React17.createElement(Checkbox.Indicator, null, /* @__PURE__ */ React17.createElement(CheckIcon, { width: 16, height: 16 }))));
|
|
2808
2821
|
};
|
|
2809
2822
|
|
|
2810
2823
|
// src/Prebuilt/services/tokenService.js
|
|
@@ -2852,7 +2865,7 @@ function getToken(tokenEndpoint, userId, role, roomId) {
|
|
|
2852
2865
|
}
|
|
2853
2866
|
|
|
2854
2867
|
// src/Prebuilt/components/AuthToken.jsx
|
|
2855
|
-
var AuthToken =
|
|
2868
|
+
var AuthToken = React18.memo(({ authTokenByRoomCodeEndpoint }) => {
|
|
2856
2869
|
const hmsActions = useHMSActions5();
|
|
2857
2870
|
const tokenEndpoint = useTokenEndpoint();
|
|
2858
2871
|
const { showPreview, roomCode } = useHMSPrebuiltContext();
|
|
@@ -2892,7 +2905,7 @@ var AuthToken = React19.memo(({ authTokenByRoomCodeEndpoint }) => {
|
|
|
2892
2905
|
roomCode
|
|
2893
2906
|
]);
|
|
2894
2907
|
if (error.title) {
|
|
2895
|
-
return /* @__PURE__ */
|
|
2908
|
+
return /* @__PURE__ */ React18.createElement(ErrorDialog, { title: error.title }, error.body);
|
|
2896
2909
|
}
|
|
2897
2910
|
return null;
|
|
2898
2911
|
});
|
|
@@ -2936,12 +2949,12 @@ var convertError = (error) => {
|
|
|
2936
2949
|
var Link2 = styled("a", {
|
|
2937
2950
|
color: "#2f80e1"
|
|
2938
2951
|
});
|
|
2939
|
-
var ErrorWithSupportLink = (errorMessage) => /* @__PURE__ */
|
|
2952
|
+
var ErrorWithSupportLink = (errorMessage) => /* @__PURE__ */ React18.createElement("div", null, errorMessage, " If you think this is a mistake on our side, please create", " ", /* @__PURE__ */ React18.createElement(Link2, { target: "_blank", href: "https://github.com/100mslive/100ms-web/issues", rel: "noreferrer" }, "an issue"), " ", "or reach out over", " ", /* @__PURE__ */ React18.createElement(Link2, { target: "_blank", href: "https://discord.com/invite/kGdmszyzq2", rel: "noreferrer" }, "Discord"), ".");
|
|
2940
2953
|
var AuthToken_default = AuthToken;
|
|
2941
2954
|
|
|
2942
2955
|
// src/Prebuilt/components/ErrorBoundary.jsx
|
|
2943
2956
|
init_define_process_env();
|
|
2944
|
-
import
|
|
2957
|
+
import React19, { Component } from "react";
|
|
2945
2958
|
import { logMessage } from "zipyai";
|
|
2946
2959
|
import { CopyIcon as CopyIcon2 } from "@100mslive/react-icons";
|
|
2947
2960
|
var ErrorBoundary = class extends Component {
|
|
@@ -2963,7 +2976,7 @@ var ErrorBoundary = class extends Component {
|
|
|
2963
2976
|
}
|
|
2964
2977
|
render() {
|
|
2965
2978
|
if (this.state.errorInfo) {
|
|
2966
|
-
return /* @__PURE__ */
|
|
2979
|
+
return /* @__PURE__ */ React19.createElement(
|
|
2967
2980
|
Flex,
|
|
2968
2981
|
{
|
|
2969
2982
|
align: "center",
|
|
@@ -2976,7 +2989,7 @@ var ErrorBoundary = class extends Component {
|
|
|
2976
2989
|
backgroundColor: "$background_default"
|
|
2977
2990
|
}
|
|
2978
2991
|
},
|
|
2979
|
-
/* @__PURE__ */
|
|
2992
|
+
/* @__PURE__ */ React19.createElement(Box, { css: { position: "relative", overflow: "hidden", r: "$3", height: "100%", width: "100%" } }, /* @__PURE__ */ React19.createElement(
|
|
2980
2993
|
Flex,
|
|
2981
2994
|
{
|
|
2982
2995
|
direction: "column",
|
|
@@ -2987,8 +3000,8 @@ var ErrorBoundary = class extends Component {
|
|
|
2987
3000
|
left: 0
|
|
2988
3001
|
}
|
|
2989
3002
|
},
|
|
2990
|
-
/* @__PURE__ */
|
|
2991
|
-
/* @__PURE__ */
|
|
3003
|
+
/* @__PURE__ */ React19.createElement("div", { style: { margin: "1.5rem", width: "100%" } }, /* @__PURE__ */ React19.createElement(Text, null, "Something went wrong"), /* @__PURE__ */ React19.createElement(Text, null, "Message: $", this.state.error), /* @__PURE__ */ React19.createElement("br", null), ErrorWithSupportLink(`Please reload to see if it works.`)),
|
|
3004
|
+
/* @__PURE__ */ React19.createElement(Flex, null, /* @__PURE__ */ React19.createElement(Tooltip, { title: "Reload page" }, /* @__PURE__ */ React19.createElement(
|
|
2992
3005
|
Button,
|
|
2993
3006
|
{
|
|
2994
3007
|
onClick: () => {
|
|
@@ -2998,7 +3011,7 @@ var ErrorBoundary = class extends Component {
|
|
|
2998
3011
|
"data-testid": "join_again_btn"
|
|
2999
3012
|
},
|
|
3000
3013
|
"Reload"
|
|
3001
|
-
)), /* @__PURE__ */
|
|
3014
|
+
)), /* @__PURE__ */ React19.createElement(Tooltip, { title: "Copy error details to clipboard" }, /* @__PURE__ */ React19.createElement(
|
|
3002
3015
|
Button,
|
|
3003
3016
|
{
|
|
3004
3017
|
onClick: () => {
|
|
@@ -3014,11 +3027,11 @@ var ErrorBoundary = class extends Component {
|
|
|
3014
3027
|
css: { mx: "$8" },
|
|
3015
3028
|
"data-testid": "join_again_btn"
|
|
3016
3029
|
},
|
|
3017
|
-
/* @__PURE__ */
|
|
3030
|
+
/* @__PURE__ */ React19.createElement(CopyIcon2, null),
|
|
3018
3031
|
" ",
|
|
3019
3032
|
this.state.isErrorCopied ? "Copied" : "Copy Details"
|
|
3020
3033
|
))),
|
|
3021
|
-
/* @__PURE__ */
|
|
3034
|
+
/* @__PURE__ */ React19.createElement("details", { style: { whiteSpace: "pre-wrap", margin: "1.5rem" } }, /* @__PURE__ */ React19.createElement(Text, null, this.state.error && this.state.error.toString()), /* @__PURE__ */ React19.createElement("br", null), /* @__PURE__ */ React19.createElement(Text, null, JSON.stringify(this.state.errorInfo)))
|
|
3022
3035
|
))
|
|
3023
3036
|
);
|
|
3024
3037
|
}
|
|
@@ -3028,13 +3041,13 @@ var ErrorBoundary = class extends Component {
|
|
|
3028
3041
|
|
|
3029
3042
|
// src/Prebuilt/components/FullPageProgress.jsx
|
|
3030
3043
|
init_define_process_env();
|
|
3031
|
-
import
|
|
3032
|
-
var FullPageProgress = ({ loaderColor = "$primary_default", loadingText = "" }) => /* @__PURE__ */
|
|
3044
|
+
import React20 from "react";
|
|
3045
|
+
var FullPageProgress = ({ loaderColor = "$primary_default", loadingText = "" }) => /* @__PURE__ */ React20.createElement(Flex, { direction: "column", justify: "center", align: "center", css: { size: "100%", color: loaderColor } }, /* @__PURE__ */ React20.createElement(Loading, { color: "currentColor", size: 100 }), loadingText ? /* @__PURE__ */ React20.createElement(Text, { css: { mt: "$10", color: "$on_surface_high" } }, loadingText) : null);
|
|
3033
3046
|
var FullPageProgress_default = FullPageProgress;
|
|
3034
3047
|
|
|
3035
3048
|
// src/Prebuilt/components/init/Init.jsx
|
|
3036
3049
|
init_define_process_env();
|
|
3037
|
-
import
|
|
3050
|
+
import React21, { useEffect as useEffect7 } from "react";
|
|
3038
3051
|
import {
|
|
3039
3052
|
selectLocalPeerID,
|
|
3040
3053
|
selectLocalPeerName,
|
|
@@ -3075,7 +3088,7 @@ var Init = () => {
|
|
|
3075
3088
|
setUpZipy(peerData);
|
|
3076
3089
|
}
|
|
3077
3090
|
}, [localPeerID, localPeerName, localPeerRole, sessionId]);
|
|
3078
|
-
return /* @__PURE__ */
|
|
3091
|
+
return /* @__PURE__ */ React21.createElement(FeatureFlagsInit, null);
|
|
3079
3092
|
};
|
|
3080
3093
|
|
|
3081
3094
|
// src/Prebuilt/components/Input/KeyboardInputManager.js
|
|
@@ -3188,7 +3201,7 @@ init_define_process_env();
|
|
|
3188
3201
|
|
|
3189
3202
|
// src/Prebuilt/components/Notifications/Notifications.jsx
|
|
3190
3203
|
init_define_process_env();
|
|
3191
|
-
import
|
|
3204
|
+
import React29, { useEffect as useEffect17 } from "react";
|
|
3192
3205
|
import { logMessage as logMessage3 } from "zipyai";
|
|
3193
3206
|
import { HMSNotificationTypes as HMSNotificationTypes8, useHMSNotifications as useHMSNotifications8 } from "@100mslive/react-sdk";
|
|
3194
3207
|
|
|
@@ -3197,15 +3210,15 @@ init_define_process_env();
|
|
|
3197
3210
|
|
|
3198
3211
|
// src/Prebuilt/components/Toast/ToastConfig.jsx
|
|
3199
3212
|
init_define_process_env();
|
|
3200
|
-
import
|
|
3213
|
+
import React22 from "react";
|
|
3201
3214
|
import { ChatIcon, ConnectivityIcon, HandIcon, PersonIcon as PersonIcon2, PoorConnectivityIcon } from "@100mslive/react-icons";
|
|
3202
|
-
var ChatAction =
|
|
3215
|
+
var ChatAction = React22.forwardRef((_, ref) => {
|
|
3203
3216
|
const toggleChat = useSidepaneToggle(SIDE_PANE_OPTIONS.CHAT);
|
|
3204
3217
|
const isChatOpen = useIsSidepaneTypeOpen(SIDE_PANE_OPTIONS.CHAT);
|
|
3205
3218
|
if (isChatOpen) {
|
|
3206
3219
|
return null;
|
|
3207
3220
|
}
|
|
3208
|
-
return /* @__PURE__ */
|
|
3221
|
+
return /* @__PURE__ */ React22.createElement(Button, { outlined: true, as: "div", variant: "standard", css: { w: "max-content" }, onClick: toggleChat, ref }, "Open Chat");
|
|
3209
3222
|
});
|
|
3210
3223
|
var ToastConfig = {
|
|
3211
3224
|
PEER_LIST: {
|
|
@@ -3214,18 +3227,18 @@ var ToastConfig = {
|
|
|
3214
3227
|
if (notification.data.length === 1) {
|
|
3215
3228
|
return {
|
|
3216
3229
|
title: `${(_a = notification.data[0]) == null ? void 0 : _a.name} joined`,
|
|
3217
|
-
icon: /* @__PURE__ */
|
|
3230
|
+
icon: /* @__PURE__ */ React22.createElement(PersonIcon2, null)
|
|
3218
3231
|
};
|
|
3219
3232
|
}
|
|
3220
3233
|
return {
|
|
3221
3234
|
title: `${(_b = notification.data[notification.data.length - 1]) == null ? void 0 : _b.name} and ${notification.data.length - 1} others joined`,
|
|
3222
|
-
icon: /* @__PURE__ */
|
|
3235
|
+
icon: /* @__PURE__ */ React22.createElement(PersonIcon2, null)
|
|
3223
3236
|
};
|
|
3224
3237
|
},
|
|
3225
3238
|
multiple: (notifications) => {
|
|
3226
3239
|
return {
|
|
3227
3240
|
title: `${notifications[0].data.name} and ${notifications.length - 1} others joined`,
|
|
3228
|
-
icon: /* @__PURE__ */
|
|
3241
|
+
icon: /* @__PURE__ */ React22.createElement(PersonIcon2, null)
|
|
3229
3242
|
};
|
|
3230
3243
|
}
|
|
3231
3244
|
},
|
|
@@ -3234,13 +3247,13 @@ var ToastConfig = {
|
|
|
3234
3247
|
var _a;
|
|
3235
3248
|
return {
|
|
3236
3249
|
title: `${(_a = notification.data) == null ? void 0 : _a.name} joined`,
|
|
3237
|
-
icon: /* @__PURE__ */
|
|
3250
|
+
icon: /* @__PURE__ */ React22.createElement(PersonIcon2, null)
|
|
3238
3251
|
};
|
|
3239
3252
|
},
|
|
3240
3253
|
multiple: function(notifications) {
|
|
3241
3254
|
return {
|
|
3242
3255
|
title: `${notifications[notifications.length - 1].data.name} and ${notifications.length - 1} others joined`,
|
|
3243
|
-
icon: /* @__PURE__ */
|
|
3256
|
+
icon: /* @__PURE__ */ React22.createElement(PersonIcon2, null)
|
|
3244
3257
|
};
|
|
3245
3258
|
}
|
|
3246
3259
|
},
|
|
@@ -3249,13 +3262,13 @@ var ToastConfig = {
|
|
|
3249
3262
|
var _a;
|
|
3250
3263
|
return {
|
|
3251
3264
|
title: `${(_a = notification.data) == null ? void 0 : _a.name} left`,
|
|
3252
|
-
icon: /* @__PURE__ */
|
|
3265
|
+
icon: /* @__PURE__ */ React22.createElement(PersonIcon2, null)
|
|
3253
3266
|
};
|
|
3254
3267
|
},
|
|
3255
3268
|
multiple: function(notifications) {
|
|
3256
3269
|
return {
|
|
3257
3270
|
title: `${notifications[notifications.length - 1].data.name} and ${notifications.length - 1} others left`,
|
|
3258
|
-
icon: /* @__PURE__ */
|
|
3271
|
+
icon: /* @__PURE__ */ React22.createElement(PersonIcon2, null)
|
|
3259
3272
|
};
|
|
3260
3273
|
}
|
|
3261
3274
|
},
|
|
@@ -3264,14 +3277,14 @@ var ToastConfig = {
|
|
|
3264
3277
|
var _a;
|
|
3265
3278
|
return {
|
|
3266
3279
|
title: `${(_a = notification.data) == null ? void 0 : _a.name} raised hand`,
|
|
3267
|
-
icon: /* @__PURE__ */
|
|
3280
|
+
icon: /* @__PURE__ */ React22.createElement(HandIcon, null)
|
|
3268
3281
|
};
|
|
3269
3282
|
},
|
|
3270
3283
|
multiple: (notifications) => {
|
|
3271
3284
|
var _a;
|
|
3272
3285
|
return {
|
|
3273
3286
|
title: `${(_a = notifications[notifications.length - 1].data) == null ? void 0 : _a.name} and ${notifications.length - 1} others raised hand`,
|
|
3274
|
-
icon: /* @__PURE__ */
|
|
3287
|
+
icon: /* @__PURE__ */ React22.createElement(HandIcon, null)
|
|
3275
3288
|
};
|
|
3276
3289
|
}
|
|
3277
3290
|
},
|
|
@@ -3280,15 +3293,15 @@ var ToastConfig = {
|
|
|
3280
3293
|
var _a;
|
|
3281
3294
|
return {
|
|
3282
3295
|
title: `New message from ${(_a = notification.data) == null ? void 0 : _a.senderName}`,
|
|
3283
|
-
icon: /* @__PURE__ */
|
|
3284
|
-
action: /* @__PURE__ */
|
|
3296
|
+
icon: /* @__PURE__ */ React22.createElement(ChatIcon, null),
|
|
3297
|
+
action: /* @__PURE__ */ React22.createElement(ChatAction, null)
|
|
3285
3298
|
};
|
|
3286
3299
|
},
|
|
3287
3300
|
multiple: (notifications) => {
|
|
3288
3301
|
return {
|
|
3289
3302
|
title: `${notifications.length} new messages`,
|
|
3290
|
-
icon: /* @__PURE__ */
|
|
3291
|
-
action: /* @__PURE__ */
|
|
3303
|
+
icon: /* @__PURE__ */ React22.createElement(ChatIcon, null),
|
|
3304
|
+
action: /* @__PURE__ */ React22.createElement(ChatAction, null)
|
|
3292
3305
|
};
|
|
3293
3306
|
}
|
|
3294
3307
|
},
|
|
@@ -3296,7 +3309,7 @@ var ToastConfig = {
|
|
|
3296
3309
|
single: () => {
|
|
3297
3310
|
return {
|
|
3298
3311
|
title: `You are now connected`,
|
|
3299
|
-
icon: /* @__PURE__ */
|
|
3312
|
+
icon: /* @__PURE__ */ React22.createElement(ConnectivityIcon, null),
|
|
3300
3313
|
variant: "success",
|
|
3301
3314
|
duration: 3e3
|
|
3302
3315
|
};
|
|
@@ -3308,7 +3321,7 @@ var ToastConfig = {
|
|
|
3308
3321
|
title: `You are offline for now. while we try to reconnect, please check
|
|
3309
3322
|
your internet connection. ${message}.
|
|
3310
3323
|
`,
|
|
3311
|
-
icon: /* @__PURE__ */
|
|
3324
|
+
icon: /* @__PURE__ */ React22.createElement(PoorConnectivityIcon, null),
|
|
3312
3325
|
variant: "warning",
|
|
3313
3326
|
duration: 3e4
|
|
3314
3327
|
};
|
|
@@ -3415,11 +3428,11 @@ ToastManager.addListener(ToastBatcher.syncUItoast.bind(ToastBatcher));
|
|
|
3415
3428
|
|
|
3416
3429
|
// src/Prebuilt/components/Notifications/AutoplayBlockedModal.jsx
|
|
3417
3430
|
init_define_process_env();
|
|
3418
|
-
import
|
|
3431
|
+
import React23 from "react";
|
|
3419
3432
|
import { useAutoplayError } from "@100mslive/react-sdk";
|
|
3420
3433
|
function AutoplayBlockedModal() {
|
|
3421
3434
|
const { error, resetError, unblockAudio } = useAutoplayError();
|
|
3422
|
-
return /* @__PURE__ */
|
|
3435
|
+
return /* @__PURE__ */ React23.createElement(
|
|
3423
3436
|
Dialog.Root,
|
|
3424
3437
|
{
|
|
3425
3438
|
open: !!error,
|
|
@@ -3430,7 +3443,7 @@ function AutoplayBlockedModal() {
|
|
|
3430
3443
|
resetError();
|
|
3431
3444
|
}
|
|
3432
3445
|
},
|
|
3433
|
-
/* @__PURE__ */
|
|
3446
|
+
/* @__PURE__ */ React23.createElement(DialogContent, { title: "Permission Error", closeable: false }, /* @__PURE__ */ React23.createElement(DialogRow, null, /* @__PURE__ */ React23.createElement(Text, { variant: "md" }, "The browser wants us to get a confirmation for playing the Audio. Please allow audio to proceed.")), /* @__PURE__ */ React23.createElement(DialogRow, { justify: "end" }, /* @__PURE__ */ React23.createElement(
|
|
3434
3447
|
Button,
|
|
3435
3448
|
{
|
|
3436
3449
|
variant: "primary",
|
|
@@ -3446,7 +3459,7 @@ function AutoplayBlockedModal() {
|
|
|
3446
3459
|
|
|
3447
3460
|
// src/Prebuilt/components/Notifications/InitErrorModal.jsx
|
|
3448
3461
|
init_define_process_env();
|
|
3449
|
-
import
|
|
3462
|
+
import React24, { useEffect as useEffect9, useState as useState5 } from "react";
|
|
3450
3463
|
var InitErrorModal = ({ notification }) => {
|
|
3451
3464
|
const [showModal, setShowModal] = useState5(false);
|
|
3452
3465
|
const [info, setInfo] = useState5({ title: "Init Error", description: "" });
|
|
@@ -3470,7 +3483,7 @@ var InitErrorModal = ({ notification }) => {
|
|
|
3470
3483
|
setInfo({ title, description });
|
|
3471
3484
|
setShowModal(true);
|
|
3472
3485
|
}, [notification]);
|
|
3473
|
-
return /* @__PURE__ */
|
|
3486
|
+
return /* @__PURE__ */ React24.createElement(ErrorDialog, { open: showModal, onOpenChange: setShowModal, title: info.title }, /* @__PURE__ */ React24.createElement(Text, { variant: "sm", css: { wordBreak: "break-word" } }, info.description, " ", /* @__PURE__ */ React24.createElement("br", null), "Current URL - ", window.location.href));
|
|
3474
3487
|
};
|
|
3475
3488
|
|
|
3476
3489
|
// src/Prebuilt/components/Notifications/MessageNotifications.jsx
|
|
@@ -3510,14 +3523,14 @@ var PeerNotifications = () => {
|
|
|
3510
3523
|
const isPeerJoinSubscribed = useSubscribedNotifications(SUBSCRIBED_NOTIFICATIONS.PEER_JOINED);
|
|
3511
3524
|
const isPeerLeftSubscribed = useSubscribedNotifications(SUBSCRIBED_NOTIFICATIONS.PEER_LEFT);
|
|
3512
3525
|
useEffect11(() => {
|
|
3513
|
-
var _a;
|
|
3514
|
-
if (!notification) {
|
|
3526
|
+
var _a, _b;
|
|
3527
|
+
if (!notification || ((_a = notification == null ? void 0 : notification.data) == null ? void 0 : _a.roleName) && isInternalRole(notification.data.roleName)) {
|
|
3515
3528
|
return;
|
|
3516
3529
|
}
|
|
3517
3530
|
console.debug(`[${notification.type}]`, notification);
|
|
3518
3531
|
switch (notification.type) {
|
|
3519
3532
|
case HMSNotificationTypes2.PEER_LIST:
|
|
3520
|
-
if (!isPeerJoinSubscribed || ((
|
|
3533
|
+
if (!isPeerJoinSubscribed || ((_b = notification.data) == null ? void 0 : _b.length) === 0) {
|
|
3521
3534
|
return;
|
|
3522
3535
|
}
|
|
3523
3536
|
break;
|
|
@@ -3541,13 +3554,10 @@ var PeerNotifications = () => {
|
|
|
3541
3554
|
|
|
3542
3555
|
// src/Prebuilt/components/Notifications/PermissionErrorModal.jsx
|
|
3543
3556
|
init_define_process_env();
|
|
3544
|
-
import
|
|
3557
|
+
import React25, { useEffect as useEffect12, useState as useState6 } from "react";
|
|
3545
3558
|
import { useMedia } from "react-use";
|
|
3546
3559
|
import { HMSNotificationTypes as HMSNotificationTypes3, useHMSNotifications as useHMSNotifications3 } from "@100mslive/react-sdk";
|
|
3547
3560
|
|
|
3548
|
-
// src/assets/android-perm-0.png
|
|
3549
|
-
var android_perm_0_default = "data:image/png;base64,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";
|
|
3550
|
-
|
|
3551
3561
|
// src/assets/android-perm-1.png
|
|
3552
3562
|
var android_perm_1_default = "data:image/png;base64,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";
|
|
3553
3563
|
|
|
@@ -3559,13 +3569,7 @@ function PermissionErrorModal() {
|
|
|
3559
3569
|
const notification = useHMSNotifications3(HMSNotificationTypes3.ERROR);
|
|
3560
3570
|
const [deviceType, setDeviceType] = useState6("");
|
|
3561
3571
|
const [isSystemError, setIsSystemError] = useState6(false);
|
|
3562
|
-
const [showAndroidPrompt, setShowAndroidPrompt] = useState6(true);
|
|
3563
3572
|
const isMobile = useMedia(config.media.md);
|
|
3564
|
-
useEffect12(() => {
|
|
3565
|
-
if (showAndroidPrompt && isAndroid && isMobile) {
|
|
3566
|
-
setDeviceType("camera and microphone");
|
|
3567
|
-
}
|
|
3568
|
-
}, []);
|
|
3569
3573
|
useEffect12(() => {
|
|
3570
3574
|
var _a, _b, _c, _d, _e;
|
|
3571
3575
|
if (!notification || ((_a = notification.data) == null ? void 0 : _a.code) !== 3001 && ((_b = notification.data) == null ? void 0 : _b.code) !== 3011 || ((_c = notification.data) == null ? void 0 : _c.code) === 3001 && ((_d = notification.data) == null ? void 0 : _d.message.includes("screen"))) {
|
|
@@ -3587,32 +3591,22 @@ function PermissionErrorModal() {
|
|
|
3587
3591
|
}
|
|
3588
3592
|
setIsSystemError(notification.data.code === 3011);
|
|
3589
3593
|
}, [notification]);
|
|
3590
|
-
return deviceType ? /* @__PURE__ */
|
|
3594
|
+
return deviceType ? /* @__PURE__ */ React25.createElement(Dialog.Root, { open: !!deviceType }, /* @__PURE__ */ React25.createElement(Dialog.Portal, null, /* @__PURE__ */ React25.createElement(Dialog.Overlay, null), /* @__PURE__ */ React25.createElement(Dialog.Content, { css: { w: "min(380px, 90%)", p: "$8" } }, /* @__PURE__ */ React25.createElement(
|
|
3591
3595
|
Dialog.Title,
|
|
3592
3596
|
{
|
|
3593
3597
|
css: {
|
|
3594
3598
|
borderBottom: "1px solid $border_default"
|
|
3595
3599
|
}
|
|
3596
3600
|
},
|
|
3597
|
-
isMobile && isIOS ? /* @__PURE__ */
|
|
3598
|
-
isMobile && isAndroid ?
|
|
3599
|
-
/* @__PURE__ */
|
|
3600
|
-
), /* @__PURE__ */
|
|
3601
|
-
Button,
|
|
3602
|
-
{
|
|
3603
|
-
css: { w: "100%" },
|
|
3604
|
-
onClick: () => {
|
|
3605
|
-
setDeviceType("");
|
|
3606
|
-
setShowAndroidPrompt(false);
|
|
3607
|
-
}
|
|
3608
|
-
},
|
|
3609
|
-
"Continue"
|
|
3610
|
-
) : /* @__PURE__ */ React26.createElement(React26.Fragment, null, /* @__PURE__ */ React26.createElement(Button, { onClick: () => setDeviceType(""), css: { w: "100%", mb: "$6" } }, "I've allowed access"), /* @__PURE__ */ React26.createElement(Button, { outlined: true, variant: "standard", onClick: () => setDeviceType(""), css: { w: "100%" } }, "Continue anyway")) : null, !isMobile ? /* @__PURE__ */ React26.createElement(Flex, { justify: "end", css: { w: "100%" } }, /* @__PURE__ */ React26.createElement(Button, { outlined: true, variant: "standard", onClick: () => setDeviceType("") }, "Dismiss")) : null))) : null;
|
|
3601
|
+
isMobile && isIOS ? /* @__PURE__ */ React25.createElement("img", { style: { maxWidth: "100%", maxHeight: "100%" }, src: ios_perm_0_default }) : null,
|
|
3602
|
+
isMobile && isAndroid ? /* @__PURE__ */ React25.createElement("img", { src: android_perm_1_default, style: { maxWidth: "100%", maxHeight: "100%" } }) : null,
|
|
3603
|
+
/* @__PURE__ */ React25.createElement(Text, { variant: "h6" }, "We can't access your ", deviceType)
|
|
3604
|
+
), /* @__PURE__ */ React25.createElement(Text, { variant: "sm", css: { pt: "$4", pb: "$10", color: "$on_surface_medium" } }, isMobile && isIOS ? 'Enable permissions by reloading this page and clicking "Allow" on the pop-up, or change settings from the address bar.' : null, isMobile && isAndroid ? `To allow other users to see and hear you, click the blocked camera icon in your browser's address bar.` : null, !isMobile ? `Access to ${deviceType} is required. ` : null, isSystemError && !isMobile ? `Enable permissions for ${deviceType}${deviceType === "screen" ? "share" : ""} from sytem settings` : null, !isSystemError && !isMobile ? `Enable permissions for ${deviceType}${deviceType === "screen" ? "share" : ""} from address bar or browser settings.` : null), isMobile && isIOS ? /* @__PURE__ */ React25.createElement(React25.Fragment, null, /* @__PURE__ */ React25.createElement(Button, { onClick: () => window.location.reload(), css: { w: "100%", mb: "$6" } }, "Reload"), /* @__PURE__ */ React25.createElement(Button, { outlined: true, variant: "standard", onClick: () => setDeviceType(""), css: { w: "100%" } }, "Continue anyway")) : null, isMobile && isAndroid ? /* @__PURE__ */ React25.createElement(React25.Fragment, null, /* @__PURE__ */ React25.createElement(Button, { onClick: () => setDeviceType(""), css: { w: "100%", mb: "$6" } }, "I've allowed access"), /* @__PURE__ */ React25.createElement(Button, { outlined: true, variant: "standard", onClick: () => setDeviceType(""), css: { w: "100%" } }, "Continue anyway")) : null, !isMobile ? /* @__PURE__ */ React25.createElement(Flex, { justify: "end", css: { w: "100%" } }, /* @__PURE__ */ React25.createElement(Button, { outlined: true, variant: "standard", onClick: () => setDeviceType("") }, "Dismiss")) : null))) : null;
|
|
3611
3605
|
}
|
|
3612
3606
|
|
|
3613
3607
|
// src/Prebuilt/components/Notifications/ReconnectNotifications.jsx
|
|
3614
3608
|
init_define_process_env();
|
|
3615
|
-
import
|
|
3609
|
+
import React26, { useEffect as useEffect13, useState as useState7 } from "react";
|
|
3616
3610
|
import { logMessage as logMessage2 } from "zipyai";
|
|
3617
3611
|
import { HMSNotificationTypes as HMSNotificationTypes4, useHMSNotifications as useHMSNotifications4 } from "@100mslive/react-sdk";
|
|
3618
3612
|
var notificationTypes2 = [
|
|
@@ -3649,7 +3643,7 @@ var ReconnectNotifications = () => {
|
|
|
3649
3643
|
}, [notification]);
|
|
3650
3644
|
if (!open || !isQA)
|
|
3651
3645
|
return null;
|
|
3652
|
-
return /* @__PURE__ */
|
|
3646
|
+
return /* @__PURE__ */ React26.createElement(Dialog.Root, { open, modal: true }, /* @__PURE__ */ React26.createElement(Dialog.Portal, { container: document.getElementById("conferencing") }, /* @__PURE__ */ React26.createElement(Dialog.Overlay, null), /* @__PURE__ */ React26.createElement(
|
|
3653
3647
|
Dialog.Content,
|
|
3654
3648
|
{
|
|
3655
3649
|
css: {
|
|
@@ -3663,13 +3657,13 @@ var ReconnectNotifications = () => {
|
|
|
3663
3657
|
animation: "none !important"
|
|
3664
3658
|
}
|
|
3665
3659
|
},
|
|
3666
|
-
/* @__PURE__ */
|
|
3660
|
+
/* @__PURE__ */ React26.createElement(Flex, { align: "center" }, /* @__PURE__ */ React26.createElement("div", { style: { display: "inline", margin: "0.25rem" } }, /* @__PURE__ */ React26.createElement(Loading, { size: 16 })), /* @__PURE__ */ React26.createElement(Text, { css: { fontSize: "$space$8", color: "$on_surface_high" } }, "You lost your network connection. Trying to reconnect."))
|
|
3667
3661
|
)));
|
|
3668
3662
|
};
|
|
3669
3663
|
|
|
3670
3664
|
// src/Prebuilt/components/Notifications/TrackBulkUnmuteModal.jsx
|
|
3671
3665
|
init_define_process_env();
|
|
3672
|
-
import
|
|
3666
|
+
import React27, { useEffect as useEffect14, useState as useState8 } from "react";
|
|
3673
3667
|
import { HMSNotificationTypes as HMSNotificationTypes5, useHMSActions as useHMSActions7, useHMSNotifications as useHMSNotifications5 } from "@100mslive/react-sdk";
|
|
3674
3668
|
import { MicOnIcon } from "@100mslive/react-icons";
|
|
3675
3669
|
var TrackBulkUnmuteModal = () => {
|
|
@@ -3699,7 +3693,7 @@ var TrackBulkUnmuteModal = () => {
|
|
|
3699
3693
|
return null;
|
|
3700
3694
|
}
|
|
3701
3695
|
const { requestedBy: peer, tracks, enabled } = muteNotification;
|
|
3702
|
-
return /* @__PURE__ */
|
|
3696
|
+
return /* @__PURE__ */ React27.createElement(
|
|
3703
3697
|
RequestDialog,
|
|
3704
3698
|
{
|
|
3705
3699
|
title: "Track Unmute Request",
|
|
@@ -3738,7 +3732,7 @@ var TrackNotifications = () => {
|
|
|
3738
3732
|
|
|
3739
3733
|
// src/Prebuilt/components/Notifications/TrackUnmuteModal.jsx
|
|
3740
3734
|
init_define_process_env();
|
|
3741
|
-
import
|
|
3735
|
+
import React28, { useEffect as useEffect16, useState as useState9 } from "react";
|
|
3742
3736
|
import { HMSNotificationTypes as HMSNotificationTypes7, useHMSActions as useHMSActions8, useHMSNotifications as useHMSNotifications7 } from "@100mslive/react-sdk";
|
|
3743
3737
|
import { MicOnIcon as MicOnIcon2 } from "@100mslive/react-icons";
|
|
3744
3738
|
var TrackUnmuteModal = () => {
|
|
@@ -3768,7 +3762,7 @@ var TrackUnmuteModal = () => {
|
|
|
3768
3762
|
return null;
|
|
3769
3763
|
}
|
|
3770
3764
|
const { requestedBy: peer, track, enabled } = muteNotification;
|
|
3771
|
-
return /* @__PURE__ */
|
|
3765
|
+
return /* @__PURE__ */ React28.createElement(
|
|
3772
3766
|
RequestDialog,
|
|
3773
3767
|
{
|
|
3774
3768
|
title: "Track Unmute Request",
|
|
@@ -3839,7 +3833,7 @@ function Notifications() {
|
|
|
3839
3833
|
const toastId = ToastManager.addToast({
|
|
3840
3834
|
title: ((_f = notification.data) == null ? void 0 : _f.message) || "We couldn\u2019t reconnect you. When you\u2019re back online, try joining the room.",
|
|
3841
3835
|
inlineAction: true,
|
|
3842
|
-
action: /* @__PURE__ */
|
|
3836
|
+
action: /* @__PURE__ */ React29.createElement(
|
|
3843
3837
|
Button,
|
|
3844
3838
|
{
|
|
3845
3839
|
onClick: () => {
|
|
@@ -3911,12 +3905,12 @@ function Notifications() {
|
|
|
3911
3905
|
break;
|
|
3912
3906
|
}
|
|
3913
3907
|
}, [notification, subscribedNotifications.ERROR, subscribedNotifications.METADATA_UPDATED, HLS_VIEWER_ROLE]);
|
|
3914
|
-
return /* @__PURE__ */
|
|
3908
|
+
return /* @__PURE__ */ React29.createElement(React29.Fragment, null, !isHeadless && /* @__PURE__ */ React29.createElement(TrackUnmuteModal, null), !isHeadless && /* @__PURE__ */ React29.createElement(TrackBulkUnmuteModal, null), /* @__PURE__ */ React29.createElement(TrackNotifications, null), /* @__PURE__ */ React29.createElement(PeerNotifications, null), /* @__PURE__ */ React29.createElement(ReconnectNotifications, null), /* @__PURE__ */ React29.createElement(AutoplayBlockedModal, null), /* @__PURE__ */ React29.createElement(PermissionErrorModal, null), /* @__PURE__ */ React29.createElement(MessageNotifications, null), /* @__PURE__ */ React29.createElement(InitErrorModal, { notification }));
|
|
3915
3909
|
}
|
|
3916
3910
|
|
|
3917
3911
|
// src/Prebuilt/components/PostLeave.jsx
|
|
3918
3912
|
init_define_process_env();
|
|
3919
|
-
import
|
|
3913
|
+
import React48 from "react";
|
|
3920
3914
|
import { useParams as useParams2 } from "react-router-dom";
|
|
3921
3915
|
import { ExitIcon as ExitIcon2 } from "@100mslive/react-icons";
|
|
3922
3916
|
|
|
@@ -3925,22 +3919,22 @@ init_define_process_env();
|
|
|
3925
3919
|
|
|
3926
3920
|
// src/Prebuilt/components/Header/Header.jsx
|
|
3927
3921
|
init_define_process_env();
|
|
3928
|
-
import
|
|
3922
|
+
import React47 from "react";
|
|
3929
3923
|
|
|
3930
3924
|
// src/Prebuilt/components/Header/ConferencingHeader.jsx
|
|
3931
3925
|
init_define_process_env();
|
|
3932
|
-
import
|
|
3926
|
+
import React42 from "react";
|
|
3933
3927
|
|
|
3934
3928
|
// src/Prebuilt/components/Header/HeaderComponents.jsx
|
|
3935
3929
|
init_define_process_env();
|
|
3936
|
-
import
|
|
3930
|
+
import React31 from "react";
|
|
3937
3931
|
import { useMedia as useMedia2 } from "react-use";
|
|
3938
3932
|
import { selectDominantSpeaker, selectIsConnectedToRoom as selectIsConnectedToRoom2, useHMSStore as useHMSStore7 } from "@100mslive/react-sdk";
|
|
3939
3933
|
import { VolumeOneIcon } from "@100mslive/react-icons";
|
|
3940
3934
|
|
|
3941
3935
|
// src/Prebuilt/provider/roomLayoutProvider/index.tsx
|
|
3942
3936
|
init_define_process_env();
|
|
3943
|
-
import
|
|
3937
|
+
import React30 from "react";
|
|
3944
3938
|
import merge from "lodash.merge";
|
|
3945
3939
|
|
|
3946
3940
|
// src/Prebuilt/provider/roomLayoutProvider/hooks/useFetchRoomLayout.ts
|
|
@@ -4024,7 +4018,7 @@ var useFetchRoomLayout = ({
|
|
|
4024
4018
|
};
|
|
4025
4019
|
|
|
4026
4020
|
// src/Prebuilt/provider/roomLayoutProvider/index.tsx
|
|
4027
|
-
var RoomLayoutContext =
|
|
4021
|
+
var RoomLayoutContext = React30.createContext(void 0);
|
|
4028
4022
|
var RoomLayoutProvider = ({
|
|
4029
4023
|
children,
|
|
4030
4024
|
roomLayoutEndpoint,
|
|
@@ -4033,23 +4027,23 @@ var RoomLayoutProvider = ({
|
|
|
4033
4027
|
const authToken = useAuthToken();
|
|
4034
4028
|
let { layout } = useFetchRoomLayout({ authToken, endpoint: roomLayoutEndpoint });
|
|
4035
4029
|
layout = merge(layout, overrideLayout);
|
|
4036
|
-
return /* @__PURE__ */
|
|
4030
|
+
return /* @__PURE__ */ React30.createElement(RoomLayoutContext.Provider, { value: layout }, children);
|
|
4037
4031
|
};
|
|
4038
|
-
var useRoomLayout = () =>
|
|
4032
|
+
var useRoomLayout = () => React30.useContext(RoomLayoutContext);
|
|
4039
4033
|
|
|
4040
4034
|
// src/Prebuilt/components/Header/HeaderComponents.jsx
|
|
4041
4035
|
var SpeakerTag = () => {
|
|
4042
4036
|
const dominantSpeaker = useHMSStore7(selectDominantSpeaker);
|
|
4043
|
-
return dominantSpeaker && dominantSpeaker.name ? /* @__PURE__ */
|
|
4037
|
+
return dominantSpeaker && dominantSpeaker.name ? /* @__PURE__ */ React31.createElement(
|
|
4044
4038
|
Flex,
|
|
4045
4039
|
{
|
|
4046
4040
|
align: "center",
|
|
4047
4041
|
justify: "center",
|
|
4048
4042
|
css: { flex: "1 1 0", color: "$on_primary_high", "@md": { display: "none" } }
|
|
4049
4043
|
},
|
|
4050
|
-
/* @__PURE__ */
|
|
4051
|
-
/* @__PURE__ */
|
|
4052
|
-
) : /* @__PURE__ */
|
|
4044
|
+
/* @__PURE__ */ React31.createElement(VolumeOneIcon, null),
|
|
4045
|
+
/* @__PURE__ */ React31.createElement(Text, { variant: "md", css: __spreadProps(__spreadValues({}, textEllipsis(200)), { ml: "$2" }), title: dominantSpeaker.name }, dominantSpeaker.name)
|
|
4046
|
+
) : /* @__PURE__ */ React31.createElement(React31.Fragment, null);
|
|
4053
4047
|
};
|
|
4054
4048
|
var LogoImg = styled("img", {
|
|
4055
4049
|
maxHeight: "$14",
|
|
@@ -4068,16 +4062,16 @@ var Logo = () => {
|
|
|
4068
4062
|
if (isConnected && isMobile && isStreamingKit()) {
|
|
4069
4063
|
return null;
|
|
4070
4064
|
}
|
|
4071
|
-
return logo ? /* @__PURE__ */
|
|
4065
|
+
return logo ? /* @__PURE__ */ React31.createElement(LogoImg, { src: logo, alt: "Brand Logo" }) : null;
|
|
4072
4066
|
};
|
|
4073
4067
|
|
|
4074
4068
|
// src/Prebuilt/components/Header/ParticipantList.jsx
|
|
4075
4069
|
init_define_process_env();
|
|
4076
|
-
import
|
|
4070
|
+
import React35, { Fragment as Fragment2, useCallback as useCallback7, useEffect as useEffect20, useState as useState14 } from "react";
|
|
4077
4071
|
import { useDebounce, useMeasure } from "react-use";
|
|
4078
4072
|
import { FixedSizeList } from "react-window";
|
|
4079
4073
|
import {
|
|
4080
|
-
selectAudioTrackByPeerID,
|
|
4074
|
+
selectAudioTrackByPeerID as selectAudioTrackByPeerID2,
|
|
4081
4075
|
selectLocalPeerID as selectLocalPeerID2,
|
|
4082
4076
|
selectPeerCount as selectPeerCount2,
|
|
4083
4077
|
selectPeerMetadata,
|
|
@@ -4099,7 +4093,7 @@ import {
|
|
|
4099
4093
|
|
|
4100
4094
|
// src/Prebuilt/components/Connection/ConnectionIndicator.jsx
|
|
4101
4095
|
init_define_process_env();
|
|
4102
|
-
import
|
|
4096
|
+
import React32 from "react";
|
|
4103
4097
|
import { selectConnectionQualityByPeerID as selectConnectionQualityByPeerID2, useHMSStore as useHMSStore8 } from "@100mslive/react-sdk";
|
|
4104
4098
|
import { PoorConnectivityIcon as PoorConnectivityIcon2 } from "@100mslive/react-icons";
|
|
4105
4099
|
|
|
@@ -4159,10 +4153,10 @@ var ConnectionIndicator = ({ peerId, isTile = false }) => {
|
|
|
4159
4153
|
return null;
|
|
4160
4154
|
}
|
|
4161
4155
|
if (downlinkQuality === 0) {
|
|
4162
|
-
return /* @__PURE__ */
|
|
4156
|
+
return /* @__PURE__ */ React32.createElement(Tooltip, { title: getTooltipText(downlinkQuality) }, /* @__PURE__ */ React32.createElement(Wrapper, { isTile, css: { color: "#ED4C5A" }, "data-testid": "tile_network" }, /* @__PURE__ */ React32.createElement(PoorConnectivityIcon2, null)));
|
|
4163
4157
|
}
|
|
4164
4158
|
const size = isTile ? 12 : 16;
|
|
4165
|
-
return /* @__PURE__ */
|
|
4159
|
+
return /* @__PURE__ */ React32.createElement(Tooltip, { title: getTooltipText(downlinkQuality) }, /* @__PURE__ */ React32.createElement(Wrapper, { isTile, "data-testid": "tile_network" }, /* @__PURE__ */ React32.createElement(
|
|
4166
4160
|
"svg",
|
|
4167
4161
|
{
|
|
4168
4162
|
width: size,
|
|
@@ -4177,7 +4171,7 @@ var ConnectionIndicator = ({ peerId, isTile = false }) => {
|
|
|
4177
4171
|
strokeMiterlimit: 2
|
|
4178
4172
|
}
|
|
4179
4173
|
},
|
|
4180
|
-
/* @__PURE__ */
|
|
4174
|
+
/* @__PURE__ */ React32.createElement(
|
|
4181
4175
|
"path",
|
|
4182
4176
|
{
|
|
4183
4177
|
d: "M6.875 0c2.549.035 4.679.902 6.445 2.648.366.362.45.796.216 1.096-.239.306-.714.34-1.142.072a2.28 2.28 0 0 1-.341-.271C9.24.862 4.924.775 1.992 3.346c-.284.249-.594.419-.983.393-.272-.019-.49-.135-.613-.388-.125-.261-.05-.498.114-.713.073-.092.156-.177.245-.254C2.516.804 4.591.039 6.875 0Z",
|
|
@@ -4185,7 +4179,7 @@ var ConnectionIndicator = ({ peerId, isTile = false }) => {
|
|
|
4185
4179
|
transform: "translate(-.333)"
|
|
4186
4180
|
}
|
|
4187
4181
|
),
|
|
4188
|
-
/* @__PURE__ */
|
|
4182
|
+
/* @__PURE__ */ React32.createElement(
|
|
4189
4183
|
"path",
|
|
4190
4184
|
{
|
|
4191
4185
|
d: "M7.056 2.964c1.756.035 3.208.7 4.499 1.763.162.134.277.315.354.512.098.251.114.503-.075.72-.193.222-.452.259-.725.198-.293-.066-.518-.247-.738-.443a4.859 4.859 0 0 0-6.198-.26c-.166.127-.318.271-.475.409-.242.211-.513.343-.843.317-.43-.034-.679-.397-.561-.81.062-.211.181-.4.345-.546 1.265-1.162 2.733-1.836 4.417-1.86Z",
|
|
@@ -4193,14 +4187,14 @@ var ConnectionIndicator = ({ peerId, isTile = false }) => {
|
|
|
4193
4187
|
transform: "translate(-.333)"
|
|
4194
4188
|
}
|
|
4195
4189
|
),
|
|
4196
|
-
/* @__PURE__ */
|
|
4190
|
+
/* @__PURE__ */ React32.createElement(
|
|
4197
4191
|
"path",
|
|
4198
4192
|
{
|
|
4199
4193
|
d: "M7.384,6.052C8.293,6.068 9.157,6.449 9.783,7.108C10.005,7.339 10.157,7.6 10.07,7.942C9.959,8.377 9.435,8.581 9.071,8.243C7.935,7.191 6.356,7.183 5.152,8.183C4.816,8.462 4.6,8.485 4.332,8.27C4.063,8.055 3.998,7.691 4.177,7.358C4.273,7.179 4.414,7.038 4.57,6.911C5.26,6.349 6.149,6.05 7.384,6.052L7.384,6.052Z",
|
|
4200
4194
|
fill: getColor(2, downlinkQuality, defaultColor, theme2)
|
|
4201
4195
|
}
|
|
4202
4196
|
),
|
|
4203
|
-
/* @__PURE__ */
|
|
4197
|
+
/* @__PURE__ */ React32.createElement(
|
|
4204
4198
|
"path",
|
|
4205
4199
|
{
|
|
4206
4200
|
d: "M8.214,9.941C8.214,10.234 8.097,10.515 7.888,10.721C7.68,10.928 7.398,11.042 7.104,11.039C6.471,11.036 5.982,10.541 5.993,9.912C6.004,9.259 6.499,8.766 7.133,8.779C7.744,8.791 8.22,9.301 8.214,9.941Z",
|
|
@@ -4212,7 +4206,7 @@ var ConnectionIndicator = ({ peerId, isTile = false }) => {
|
|
|
4212
4206
|
|
|
4213
4207
|
// src/Prebuilt/components/RoleChangeModal.jsx
|
|
4214
4208
|
init_define_process_env();
|
|
4215
|
-
import
|
|
4209
|
+
import React33, { forwardRef, useRef as useRef6, useState as useState12 } from "react";
|
|
4216
4210
|
import { selectPeerByID, useHMSActions as useHMSActions9, useHMSStore as useHMSStore10 } from "@100mslive/react-sdk";
|
|
4217
4211
|
import { CheckIcon as CheckIcon2, ChevronDownIcon as ChevronDownIcon2, ChevronUpIcon as ChevronUpIcon2 } from "@100mslive/react-icons";
|
|
4218
4212
|
|
|
@@ -4234,7 +4228,7 @@ var useFilteredRoles = () => {
|
|
|
4234
4228
|
// src/Prebuilt/components/RoleChangeModal.jsx
|
|
4235
4229
|
var PeerName = forwardRef((_a, ref) => {
|
|
4236
4230
|
var _b = _a, { children, maxWidth } = _b, rest = __objRest(_b, ["children", "maxWidth"]);
|
|
4237
|
-
return /* @__PURE__ */
|
|
4231
|
+
return /* @__PURE__ */ React33.createElement(
|
|
4238
4232
|
Text,
|
|
4239
4233
|
__spreadProps(__spreadValues({}, rest), {
|
|
4240
4234
|
ref,
|
|
@@ -4264,7 +4258,7 @@ var RoleChangeModal = ({ peerId, onOpenChange }) => {
|
|
|
4264
4258
|
return null;
|
|
4265
4259
|
}
|
|
4266
4260
|
const peerNameMaxWidth = 200;
|
|
4267
|
-
return /* @__PURE__ */
|
|
4261
|
+
return /* @__PURE__ */ React33.createElement(Dialog.Root, { defaultOpen: true, onOpenChange }, /* @__PURE__ */ React33.createElement(Dialog.Portal, null, /* @__PURE__ */ React33.createElement(Dialog.Overlay, null), /* @__PURE__ */ React33.createElement(Dialog.Content, { css: { width: "min(400px,80%)", p: "$10" } }, /* @__PURE__ */ React33.createElement(Dialog.Title, { css: { p: 0 }, asChild: true }, /* @__PURE__ */ React33.createElement(Text, { as: "h6", variant: "h6" }, "Change Role")), /* @__PURE__ */ React33.createElement(Dialog.Description, { asChild: true }, /* @__PURE__ */ React33.createElement(
|
|
4268
4262
|
Text,
|
|
4269
4263
|
{
|
|
4270
4264
|
variant: "body2",
|
|
@@ -4278,9 +4272,9 @@ var RoleChangeModal = ({ peerId, onOpenChange }) => {
|
|
|
4278
4272
|
}
|
|
4279
4273
|
},
|
|
4280
4274
|
"Change the role of",
|
|
4281
|
-
peerNameRef && peerNameRef.clientWidth === peerNameMaxWidth ? /* @__PURE__ */
|
|
4275
|
+
peerNameRef && peerNameRef.clientWidth === peerNameMaxWidth ? /* @__PURE__ */ React33.createElement(Tooltip, { title: peer.name, side: "top" }, /* @__PURE__ */ React33.createElement(PeerName, { ref: setPeerNameRef, maxWidth: peerNameMaxWidth }, peer.name)) : /* @__PURE__ */ React33.createElement(PeerName, { ref: setPeerNameRef, maxWidth: peerNameMaxWidth }, peer.name),
|
|
4282
4276
|
"to"
|
|
4283
|
-
)), /* @__PURE__ */
|
|
4277
|
+
)), /* @__PURE__ */ React33.createElement(
|
|
4284
4278
|
Flex,
|
|
4285
4279
|
{
|
|
4286
4280
|
align: "center",
|
|
@@ -4289,7 +4283,7 @@ var RoleChangeModal = ({ peerId, onOpenChange }) => {
|
|
|
4289
4283
|
mb: "$10"
|
|
4290
4284
|
}
|
|
4291
4285
|
},
|
|
4292
|
-
/* @__PURE__ */
|
|
4286
|
+
/* @__PURE__ */ React33.createElement(
|
|
4293
4287
|
Box,
|
|
4294
4288
|
{
|
|
4295
4289
|
css: {
|
|
@@ -4298,7 +4292,7 @@ var RoleChangeModal = ({ peerId, onOpenChange }) => {
|
|
|
4298
4292
|
minWidth: 0
|
|
4299
4293
|
}
|
|
4300
4294
|
},
|
|
4301
|
-
/* @__PURE__ */
|
|
4295
|
+
/* @__PURE__ */ React33.createElement(Dropdown.Root, { open, onOpenChange: setOpen, css: { width: "100%" } }, /* @__PURE__ */ React33.createElement(
|
|
4302
4296
|
Dropdown.Trigger,
|
|
4303
4297
|
{
|
|
4304
4298
|
"data-testid": "open_role_selection_dropdown",
|
|
@@ -4311,8 +4305,8 @@ var RoleChangeModal = ({ peerId, onOpenChange }) => {
|
|
|
4311
4305
|
},
|
|
4312
4306
|
ref
|
|
4313
4307
|
},
|
|
4314
|
-
/* @__PURE__ */
|
|
4315
|
-
), /* @__PURE__ */
|
|
4308
|
+
/* @__PURE__ */ React33.createElement(Flex, { align: "center", justify: "between", css: { width: "100%" } }, /* @__PURE__ */ React33.createElement(Text, null, selectedRole), open ? /* @__PURE__ */ React33.createElement(ChevronUpIcon2, null) : /* @__PURE__ */ React33.createElement(ChevronDownIcon2, null))
|
|
4309
|
+
), /* @__PURE__ */ React33.createElement(Dropdown.Portal, null, /* @__PURE__ */ React33.createElement(
|
|
4316
4310
|
Dropdown.Content,
|
|
4317
4311
|
{
|
|
4318
4312
|
align: "start",
|
|
@@ -4320,7 +4314,7 @@ var RoleChangeModal = ({ peerId, onOpenChange }) => {
|
|
|
4320
4314
|
css: { zIndex: 1e3, width: (_a = ref.current) == null ? void 0 : _a.clientWidth }
|
|
4321
4315
|
},
|
|
4322
4316
|
roles.map((role) => {
|
|
4323
|
-
return /* @__PURE__ */
|
|
4317
|
+
return /* @__PURE__ */ React33.createElement(
|
|
4324
4318
|
Dropdown.Item,
|
|
4325
4319
|
{
|
|
4326
4320
|
"data-testid": role,
|
|
@@ -4336,7 +4330,7 @@ var RoleChangeModal = ({ peerId, onOpenChange }) => {
|
|
|
4336
4330
|
})
|
|
4337
4331
|
)))
|
|
4338
4332
|
)
|
|
4339
|
-
), !peer.isLocal && /* @__PURE__ */
|
|
4333
|
+
), !peer.isLocal && /* @__PURE__ */ React33.createElement(Flex, { justify: "between", css: { w: "100%", mb: "$10" } }, /* @__PURE__ */ React33.createElement(Label3, { htmlFor: "requestRoleChangePermission", css: { cursor: "pointer" } }, "Request Permission"), /* @__PURE__ */ React33.createElement(
|
|
4340
4334
|
Checkbox.Root,
|
|
4341
4335
|
{
|
|
4342
4336
|
checked: requestPermission,
|
|
@@ -4344,8 +4338,8 @@ var RoleChangeModal = ({ peerId, onOpenChange }) => {
|
|
|
4344
4338
|
id: "requestRoleChangePermission",
|
|
4345
4339
|
"data-testid": "force_role_change_checkbox"
|
|
4346
4340
|
},
|
|
4347
|
-
/* @__PURE__ */
|
|
4348
|
-
)), /* @__PURE__ */
|
|
4341
|
+
/* @__PURE__ */ React33.createElement(Checkbox.Indicator, null, /* @__PURE__ */ React33.createElement(CheckIcon2, { width: 16, height: 16 }))
|
|
4342
|
+
)), /* @__PURE__ */ React33.createElement(Flex, { justify: "center", align: "center", css: { width: "100%", gap: "$md" } }, /* @__PURE__ */ React33.createElement(Box, { css: { width: "50%" } }, /* @__PURE__ */ React33.createElement(Dialog.Close, { css: { width: "100%", p: "$4 $8" }, asChild: true }, /* @__PURE__ */ React33.createElement(Button, { variant: "standard", outlined: true, css: { width: "100%" }, "data-testid": "cancel_button" }, "Cancel"))), /* @__PURE__ */ React33.createElement(Box, { css: { width: "50%" } }, /* @__PURE__ */ React33.createElement(
|
|
4349
4343
|
Button,
|
|
4350
4344
|
{
|
|
4351
4345
|
"data-testid": "change_button",
|
|
@@ -4362,7 +4356,7 @@ var RoleChangeModal = ({ peerId, onOpenChange }) => {
|
|
|
4362
4356
|
|
|
4363
4357
|
// src/Prebuilt/components/Header/ParticipantFilter.jsx
|
|
4364
4358
|
init_define_process_env();
|
|
4365
|
-
import
|
|
4359
|
+
import React34, { useCallback as useCallback6, useState as useState13 } from "react";
|
|
4366
4360
|
import { CheckIcon as CheckIcon3, ChevronDownIcon as ChevronDownIcon3, ChevronUpIcon as ChevronUpIcon3, HandRaiseIcon, PeopleIcon } from "@100mslive/react-icons";
|
|
4367
4361
|
var ParticipantFilter = ({ selection, onSelection, isConnected, roles }) => {
|
|
4368
4362
|
var _a, _b;
|
|
@@ -4375,7 +4369,7 @@ var ParticipantFilter = ({ selection, onSelection, isConnected, roles }) => {
|
|
|
4375
4369
|
if (!isConnected) {
|
|
4376
4370
|
return null;
|
|
4377
4371
|
}
|
|
4378
|
-
return /* @__PURE__ */
|
|
4372
|
+
return /* @__PURE__ */ React34.createElement(Dropdown.Root, { open, onOpenChange: (value) => setOpen(value) }, /* @__PURE__ */ React34.createElement(
|
|
4379
4373
|
Dropdown.Trigger,
|
|
4380
4374
|
{
|
|
4381
4375
|
asChild: true,
|
|
@@ -4387,8 +4381,8 @@ var ParticipantFilter = ({ selection, onSelection, isConnected, roles }) => {
|
|
|
4387
4381
|
},
|
|
4388
4382
|
tabIndex: 0
|
|
4389
4383
|
},
|
|
4390
|
-
/* @__PURE__ */
|
|
4391
|
-
), /* @__PURE__ */
|
|
4384
|
+
/* @__PURE__ */ React34.createElement(Flex, { align: "center" }, /* @__PURE__ */ React34.createElement(Text, { variant: "sm", css: __spreadValues({}, textEllipsis(80)) }, selectionValue || "Everyone"), /* @__PURE__ */ React34.createElement(Box, { css: { ml: "$2", color: "$on_surface_low" } }, open ? /* @__PURE__ */ React34.createElement(ChevronUpIcon3, { width: 14, height: 14 }) : /* @__PURE__ */ React34.createElement(ChevronDownIcon3, { width: 14, height: 14 })))
|
|
4385
|
+
), /* @__PURE__ */ React34.createElement(
|
|
4392
4386
|
Dropdown.Content,
|
|
4393
4387
|
{
|
|
4394
4388
|
align: "start",
|
|
@@ -4400,19 +4394,19 @@ var ParticipantFilter = ({ selection, onSelection, isConnected, roles }) => {
|
|
|
4400
4394
|
w: "$48"
|
|
4401
4395
|
}
|
|
4402
4396
|
},
|
|
4403
|
-
/* @__PURE__ */
|
|
4404
|
-
/* @__PURE__ */
|
|
4397
|
+
/* @__PURE__ */ React34.createElement(Item5, { selected: !selection, title: "Everyone", onSelection: onItemClick, icon: /* @__PURE__ */ React34.createElement(PeopleIcon, null) }),
|
|
4398
|
+
/* @__PURE__ */ React34.createElement(
|
|
4405
4399
|
Item5,
|
|
4406
4400
|
{
|
|
4407
4401
|
selected: (_b = selection == null ? void 0 : selection.metadata) == null ? void 0 : _b.isHandRaised,
|
|
4408
4402
|
title: "Raised Hand",
|
|
4409
4403
|
onSelection: onItemClick,
|
|
4410
|
-
icon: /* @__PURE__ */
|
|
4404
|
+
icon: /* @__PURE__ */ React34.createElement(HandRaiseIcon, null),
|
|
4411
4405
|
value: { metadata: { isHandRaised: true }, role: "" }
|
|
4412
4406
|
}
|
|
4413
4407
|
),
|
|
4414
|
-
/* @__PURE__ */
|
|
4415
|
-
roles.filter((role) => !isInternalRole(role)).map((role) => /* @__PURE__ */
|
|
4408
|
+
/* @__PURE__ */ React34.createElement(Dropdown.ItemSeparator, null),
|
|
4409
|
+
roles.filter((role) => !isInternalRole(role)).map((role) => /* @__PURE__ */ React34.createElement(
|
|
4416
4410
|
Item5,
|
|
4417
4411
|
{
|
|
4418
4412
|
key: role,
|
|
@@ -4425,7 +4419,7 @@ var ParticipantFilter = ({ selection, onSelection, isConnected, roles }) => {
|
|
|
4425
4419
|
));
|
|
4426
4420
|
};
|
|
4427
4421
|
var Item5 = ({ selected, title, onSelection, value, icon }) => {
|
|
4428
|
-
return /* @__PURE__ */
|
|
4422
|
+
return /* @__PURE__ */ React34.createElement(
|
|
4429
4423
|
Dropdown.Item,
|
|
4430
4424
|
{
|
|
4431
4425
|
onClick: (e) => {
|
|
@@ -4433,8 +4427,8 @@ var Item5 = ({ selected, title, onSelection, value, icon }) => {
|
|
|
4433
4427
|
onSelection(value);
|
|
4434
4428
|
}
|
|
4435
4429
|
},
|
|
4436
|
-
/* @__PURE__ */
|
|
4437
|
-
selected && /* @__PURE__ */
|
|
4430
|
+
/* @__PURE__ */ React34.createElement(Flex, { align: "center", css: { flex: "1 1 0" } }, icon && /* @__PURE__ */ React34.createElement(Text, null, icon), /* @__PURE__ */ React34.createElement(Text, { css: { ml: "$4" } }, title)),
|
|
4431
|
+
selected && /* @__PURE__ */ React34.createElement(Text, null, /* @__PURE__ */ React34.createElement(CheckIcon3, { widht: 16, height: 16 }))
|
|
4438
4432
|
);
|
|
4439
4433
|
};
|
|
4440
4434
|
|
|
@@ -4456,7 +4450,7 @@ var ParticipantList = () => {
|
|
|
4456
4450
|
if (peerCount === 0) {
|
|
4457
4451
|
return null;
|
|
4458
4452
|
}
|
|
4459
|
-
return /* @__PURE__ */
|
|
4453
|
+
return /* @__PURE__ */ React35.createElement(Fragment2, null, /* @__PURE__ */ React35.createElement(Flex, { direction: "column", css: { size: "100%" } }, /* @__PURE__ */ React35.createElement(Flex, { align: "center", css: { w: "100%", mb: "$10" } }, /* @__PURE__ */ React35.createElement(Text, { css: { fontWeight: "$semiBold", mr: "$4" } }, "Participants"), /* @__PURE__ */ React35.createElement(
|
|
4460
4454
|
ParticipantFilter,
|
|
4461
4455
|
{
|
|
4462
4456
|
selection: filter,
|
|
@@ -4464,14 +4458,14 @@ var ParticipantList = () => {
|
|
|
4464
4458
|
isConnected,
|
|
4465
4459
|
roles: rolesWithParticipants
|
|
4466
4460
|
}
|
|
4467
|
-
), /* @__PURE__ */
|
|
4461
|
+
), /* @__PURE__ */ React35.createElement(IconButton_default, { onClick: toggleSidepane, css: { w: "$11", h: "$11", ml: "auto" } }, /* @__PURE__ */ React35.createElement(CrossIcon4, null))), !(filter == null ? void 0 : filter.search) && participants.length === 0 ? null : /* @__PURE__ */ React35.createElement(ParticipantSearch, { onSearch }), participants.length === 0 && /* @__PURE__ */ React35.createElement(Flex, { align: "center", justify: "center", css: { w: "100%", p: "$8 0" } }, /* @__PURE__ */ React35.createElement(Text, { variant: "sm" }, !filter ? "No participants" : "No matching participants")), /* @__PURE__ */ React35.createElement(
|
|
4468
4462
|
VirtualizedParticipants,
|
|
4469
4463
|
{
|
|
4470
4464
|
participants,
|
|
4471
4465
|
isConnected,
|
|
4472
4466
|
setSelectedPeerId
|
|
4473
4467
|
}
|
|
4474
|
-
)), selectedPeerId && /* @__PURE__ */
|
|
4468
|
+
)), selectedPeerId && /* @__PURE__ */ React35.createElement(
|
|
4475
4469
|
RoleChangeModal,
|
|
4476
4470
|
{
|
|
4477
4471
|
peerId: selectedPeerId,
|
|
@@ -4493,7 +4487,7 @@ var ParticipantCount = () => {
|
|
|
4493
4487
|
if (peerCount === 0) {
|
|
4494
4488
|
return null;
|
|
4495
4489
|
}
|
|
4496
|
-
return /* @__PURE__ */
|
|
4490
|
+
return /* @__PURE__ */ React35.createElement(
|
|
4497
4491
|
IconButton_default,
|
|
4498
4492
|
{
|
|
4499
4493
|
css: {
|
|
@@ -4509,8 +4503,8 @@ var ParticipantCount = () => {
|
|
|
4509
4503
|
active: !isParticipantsOpen,
|
|
4510
4504
|
"data-testid": "participant_list"
|
|
4511
4505
|
},
|
|
4512
|
-
/* @__PURE__ */
|
|
4513
|
-
/* @__PURE__ */
|
|
4506
|
+
/* @__PURE__ */ React35.createElement(PeopleIcon2, null),
|
|
4507
|
+
/* @__PURE__ */ React35.createElement(Text, { variant: "sm", css: { mx: "$4", c: "inherit" } }, peerCount)
|
|
4514
4508
|
);
|
|
4515
4509
|
};
|
|
4516
4510
|
function itemKey(index, data3) {
|
|
@@ -4518,7 +4512,7 @@ function itemKey(index, data3) {
|
|
|
4518
4512
|
}
|
|
4519
4513
|
var VirtualizedParticipants = ({ participants, isConnected, setSelectedPeerId }) => {
|
|
4520
4514
|
const [ref, { width, height }] = useMeasure();
|
|
4521
|
-
return /* @__PURE__ */
|
|
4515
|
+
return /* @__PURE__ */ React35.createElement(
|
|
4522
4516
|
Box,
|
|
4523
4517
|
{
|
|
4524
4518
|
ref,
|
|
@@ -4527,7 +4521,7 @@ var VirtualizedParticipants = ({ participants, isConnected, setSelectedPeerId })
|
|
|
4527
4521
|
mr: "-$10"
|
|
4528
4522
|
}
|
|
4529
4523
|
},
|
|
4530
|
-
/* @__PURE__ */
|
|
4524
|
+
/* @__PURE__ */ React35.createElement(
|
|
4531
4525
|
FixedSizeList,
|
|
4532
4526
|
{
|
|
4533
4527
|
itemSize: 68,
|
|
@@ -4541,8 +4535,8 @@ var VirtualizedParticipants = ({ participants, isConnected, setSelectedPeerId })
|
|
|
4541
4535
|
)
|
|
4542
4536
|
);
|
|
4543
4537
|
};
|
|
4544
|
-
var VirtualisedParticipantListItem =
|
|
4545
|
-
return /* @__PURE__ */
|
|
4538
|
+
var VirtualisedParticipantListItem = React35.memo(({ style, index, data: data3 }) => {
|
|
4539
|
+
return /* @__PURE__ */ React35.createElement("div", { style, key: data3.participants[index].id }, /* @__PURE__ */ React35.createElement(
|
|
4546
4540
|
Participant,
|
|
4547
4541
|
{
|
|
4548
4542
|
peer: data3.participants[index],
|
|
@@ -4552,7 +4546,7 @@ var VirtualisedParticipantListItem = React36.memo(({ style, index, data: data3 }
|
|
|
4552
4546
|
));
|
|
4553
4547
|
});
|
|
4554
4548
|
var Participant = ({ peer, isConnected, setSelectedPeerId }) => {
|
|
4555
|
-
return /* @__PURE__ */
|
|
4549
|
+
return /* @__PURE__ */ React35.createElement(Fragment2, null, /* @__PURE__ */ React35.createElement(
|
|
4556
4550
|
Flex,
|
|
4557
4551
|
{
|
|
4558
4552
|
key: peer.id,
|
|
@@ -4560,7 +4554,7 @@ var Participant = ({ peer, isConnected, setSelectedPeerId }) => {
|
|
|
4560
4554
|
align: "center",
|
|
4561
4555
|
"data-testid": "participant_" + peer.name
|
|
4562
4556
|
},
|
|
4563
|
-
/* @__PURE__ */
|
|
4557
|
+
/* @__PURE__ */ React35.createElement(
|
|
4564
4558
|
Avatar,
|
|
4565
4559
|
{
|
|
4566
4560
|
name: peer.name,
|
|
@@ -4574,8 +4568,8 @@ var Participant = ({ peer, isConnected, setSelectedPeerId }) => {
|
|
|
4574
4568
|
}
|
|
4575
4569
|
}
|
|
4576
4570
|
),
|
|
4577
|
-
/* @__PURE__ */
|
|
4578
|
-
isConnected && /* @__PURE__ */
|
|
4571
|
+
/* @__PURE__ */ React35.createElement(Flex, { direction: "column", css: { flex: "1 1 0" } }, /* @__PURE__ */ React35.createElement(Text, { variant: "md", css: __spreadProps(__spreadValues({}, textEllipsis(150)), { fontWeight: "$semiBold" }) }, peer.name), /* @__PURE__ */ React35.createElement(Text, { variant: "sub2" }, peer.roleName)),
|
|
4572
|
+
isConnected && /* @__PURE__ */ React35.createElement(
|
|
4579
4573
|
ParticipantActions,
|
|
4580
4574
|
{
|
|
4581
4575
|
peerId: peer.id,
|
|
@@ -4587,15 +4581,15 @@ var Participant = ({ peer, isConnected, setSelectedPeerId }) => {
|
|
|
4587
4581
|
)
|
|
4588
4582
|
));
|
|
4589
4583
|
};
|
|
4590
|
-
var ParticipantActions =
|
|
4584
|
+
var ParticipantActions = React35.memo(({ onSettings, peerId, role }) => {
|
|
4591
4585
|
var _a, _b;
|
|
4592
4586
|
const isHandRaised = (_a = useHMSStore11(selectPeerMetadata(peerId))) == null ? void 0 : _a.isHandRaised;
|
|
4593
4587
|
const canChangeRole = (_b = useHMSStore11(selectPermissions)) == null ? void 0 : _b.changeRole;
|
|
4594
|
-
const audioTrack = useHMSStore11(
|
|
4588
|
+
const audioTrack = useHMSStore11(selectAudioTrackByPeerID2(peerId));
|
|
4595
4589
|
const localPeerId = useHMSStore11(selectLocalPeerID2);
|
|
4596
4590
|
const canChangeVolume = peerId !== localPeerId && audioTrack;
|
|
4597
4591
|
const shouldShowMoreActions = canChangeRole || canChangeVolume;
|
|
4598
|
-
return /* @__PURE__ */
|
|
4592
|
+
return /* @__PURE__ */ React35.createElement(Flex, { align: "center", css: { flexShrink: 0 } }, /* @__PURE__ */ React35.createElement(ConnectionIndicator, { peerId }), isHandRaised && /* @__PURE__ */ React35.createElement(HandRaiseIcon2, null), shouldShowMoreActions && !isInternalRole(role) && /* @__PURE__ */ React35.createElement(ParticipantMoreActions, { onRoleChange: onSettings, peerId, role }));
|
|
4599
4593
|
});
|
|
4600
4594
|
var ParticipantMoreActions = ({ onRoleChange, peerId }) => {
|
|
4601
4595
|
const { changeRole: canChangeRole, removeOthers: canRemoveOthers } = useHMSStore11(selectPermissions);
|
|
@@ -4603,7 +4597,7 @@ var ParticipantMoreActions = ({ onRoleChange, peerId }) => {
|
|
|
4603
4597
|
const isLocal = localPeerId === peerId;
|
|
4604
4598
|
const actions = useHMSActions10();
|
|
4605
4599
|
const [open, setOpen] = useState14(false);
|
|
4606
|
-
return /* @__PURE__ */
|
|
4600
|
+
return /* @__PURE__ */ React35.createElement(Dropdown.Root, { open, onOpenChange: (value) => setOpen(value) }, /* @__PURE__ */ React35.createElement(Dropdown.Trigger, { asChild: true, "data-testid": "participant_more_actions", css: { p: "$2", r: "$0" }, tabIndex: 0 }, /* @__PURE__ */ React35.createElement(Text, null, /* @__PURE__ */ React35.createElement(VerticalMenuIcon, null))), /* @__PURE__ */ React35.createElement(Dropdown.Portal, null, /* @__PURE__ */ React35.createElement(Dropdown.Content, { align: "end", sideOffset: 8, css: { w: "$64" } }, canChangeRole && /* @__PURE__ */ React35.createElement(Dropdown.Item, { onClick: () => onRoleChange(peerId) }, /* @__PURE__ */ React35.createElement(ChangeRoleIcon, null), /* @__PURE__ */ React35.createElement(Text, { css: { ml: "$4" } }, "Change Role")), /* @__PURE__ */ React35.createElement(ParticipantVolume, { peerId }), !isLocal && canRemoveOthers && /* @__PURE__ */ React35.createElement(
|
|
4607
4601
|
Dropdown.Item,
|
|
4608
4602
|
{
|
|
4609
4603
|
onClick: () => __async(void 0, null, function* () {
|
|
@@ -4613,18 +4607,18 @@ var ParticipantMoreActions = ({ onRoleChange, peerId }) => {
|
|
|
4613
4607
|
}
|
|
4614
4608
|
})
|
|
4615
4609
|
},
|
|
4616
|
-
/* @__PURE__ */
|
|
4617
|
-
/* @__PURE__ */
|
|
4610
|
+
/* @__PURE__ */ React35.createElement(RemoveUserIcon, null),
|
|
4611
|
+
/* @__PURE__ */ React35.createElement(Text, { css: { ml: "$4", color: "$alert_error_default" } }, "Remove Participant")
|
|
4618
4612
|
))));
|
|
4619
4613
|
};
|
|
4620
4614
|
var ParticipantVolume = ({ peerId }) => {
|
|
4621
|
-
const audioTrack = useHMSStore11(
|
|
4615
|
+
const audioTrack = useHMSStore11(selectAudioTrackByPeerID2(peerId));
|
|
4622
4616
|
const localPeerId = useHMSStore11(selectLocalPeerID2);
|
|
4623
4617
|
const hmsActions = useHMSActions10();
|
|
4624
4618
|
if (peerId === localPeerId || !audioTrack) {
|
|
4625
4619
|
return null;
|
|
4626
4620
|
}
|
|
4627
|
-
return /* @__PURE__ */
|
|
4621
|
+
return /* @__PURE__ */ React35.createElement(Dropdown.Item, { css: { h: "auto" } }, /* @__PURE__ */ React35.createElement(Flex, { direction: "column", css: { w: "100%" } }, /* @__PURE__ */ React35.createElement(Flex, { align: "center" }, /* @__PURE__ */ React35.createElement(SpeakerIcon, null), /* @__PURE__ */ React35.createElement(Text, { css: { ml: "$4" } }, "Volume", audioTrack.volume ? `(${audioTrack.volume})` : "")), /* @__PURE__ */ React35.createElement(
|
|
4628
4622
|
Slider,
|
|
4629
4623
|
{
|
|
4630
4624
|
css: { my: "0.5rem" },
|
|
@@ -4637,7 +4631,7 @@ var ParticipantVolume = ({ peerId }) => {
|
|
|
4637
4631
|
)));
|
|
4638
4632
|
};
|
|
4639
4633
|
var ParticipantSearch = ({ onSearch, placeholder }) => {
|
|
4640
|
-
const [value, setValue] =
|
|
4634
|
+
const [value, setValue] = React35.useState("");
|
|
4641
4635
|
useDebounce(
|
|
4642
4636
|
() => {
|
|
4643
4637
|
onSearch(value);
|
|
@@ -4645,7 +4639,7 @@ var ParticipantSearch = ({ onSearch, placeholder }) => {
|
|
|
4645
4639
|
300,
|
|
4646
4640
|
[value, onSearch]
|
|
4647
4641
|
);
|
|
4648
|
-
return /* @__PURE__ */
|
|
4642
|
+
return /* @__PURE__ */ React35.createElement(Box, { css: { p: "$4 0", my: "$8", position: "relative" } }, /* @__PURE__ */ React35.createElement(
|
|
4649
4643
|
Box,
|
|
4650
4644
|
{
|
|
4651
4645
|
css: {
|
|
@@ -4656,8 +4650,8 @@ var ParticipantSearch = ({ onSearch, placeholder }) => {
|
|
|
4656
4650
|
color: "$on_surface_medium"
|
|
4657
4651
|
}
|
|
4658
4652
|
},
|
|
4659
|
-
/* @__PURE__ */
|
|
4660
|
-
), /* @__PURE__ */
|
|
4653
|
+
/* @__PURE__ */ React35.createElement(SearchIcon, null)
|
|
4654
|
+
), /* @__PURE__ */ React35.createElement(
|
|
4661
4655
|
Input,
|
|
4662
4656
|
{
|
|
4663
4657
|
type: "text",
|
|
@@ -4678,7 +4672,7 @@ var ParticipantSearch = ({ onSearch, placeholder }) => {
|
|
|
4678
4672
|
|
|
4679
4673
|
// src/Prebuilt/components/Header/StreamActions.jsx
|
|
4680
4674
|
init_define_process_env();
|
|
4681
|
-
import
|
|
4675
|
+
import React41, { Fragment as Fragment3, useState as useState19 } from "react";
|
|
4682
4676
|
import { useMedia as useMedia3 } from "react-use";
|
|
4683
4677
|
import {
|
|
4684
4678
|
HMSRoomState as HMSRoomState2,
|
|
@@ -4693,7 +4687,7 @@ import { RecordIcon as RecordIcon2, WrenchIcon } from "@100mslive/react-icons";
|
|
|
4693
4687
|
|
|
4694
4688
|
// src/Prebuilt/components/GoLiveButton.jsx
|
|
4695
4689
|
init_define_process_env();
|
|
4696
|
-
import
|
|
4690
|
+
import React36 from "react";
|
|
4697
4691
|
import { useRecordingStreaming as useRecordingStreaming2 } from "@100mslive/react-sdk";
|
|
4698
4692
|
import { GoLiveIcon } from "@100mslive/react-icons";
|
|
4699
4693
|
var GoLiveButton = () => {
|
|
@@ -4711,7 +4705,7 @@ var GoLiveButton = () => {
|
|
|
4711
4705
|
tooltipText = "RTMP start in progress";
|
|
4712
4706
|
}
|
|
4713
4707
|
}
|
|
4714
|
-
return /* @__PURE__ */
|
|
4708
|
+
return /* @__PURE__ */ React36.createElement(Tooltip, { title: tooltipText }, /* @__PURE__ */ React36.createElement(
|
|
4715
4709
|
Button,
|
|
4716
4710
|
{
|
|
4717
4711
|
"data-testid": "go_live",
|
|
@@ -4721,7 +4715,7 @@ var GoLiveButton = () => {
|
|
|
4721
4715
|
loading: isRTMPStartedFromUI || isHLSStartedFromUI,
|
|
4722
4716
|
disabled: isBrowserRecordingOn && !isStreamingOn
|
|
4723
4717
|
},
|
|
4724
|
-
/* @__PURE__ */
|
|
4718
|
+
/* @__PURE__ */ React36.createElement(GoLiveIcon, null),
|
|
4725
4719
|
"Go Live"
|
|
4726
4720
|
));
|
|
4727
4721
|
};
|
|
@@ -4729,7 +4723,7 @@ var GoLiveButton_default = GoLiveButton;
|
|
|
4729
4723
|
|
|
4730
4724
|
// src/Prebuilt/components/Streaming/ResolutionInput.jsx
|
|
4731
4725
|
init_define_process_env();
|
|
4732
|
-
import
|
|
4726
|
+
import React37, { useCallback as useCallback8, useState as useState15 } from "react";
|
|
4733
4727
|
import { InfoIcon } from "@100mslive/react-icons";
|
|
4734
4728
|
var ResolutionInput = ({ onResolutionChange, disabled, tooltipText, css: css2, testId }) => {
|
|
4735
4729
|
const [resolution, setResolution] = useState15(RTMP_RECORD_DEFAULT_RESOLUTION);
|
|
@@ -4752,7 +4746,7 @@ var ResolutionInput = ({ onResolutionChange, disabled, tooltipText, css: css2, t
|
|
|
4752
4746
|
},
|
|
4753
4747
|
[resolution]
|
|
4754
4748
|
);
|
|
4755
|
-
return /* @__PURE__ */
|
|
4749
|
+
return /* @__PURE__ */ React37.createElement(DialogRow, { breakSm: true, css: css2 }, /* @__PURE__ */ React37.createElement(Flex, { gap: 1 }, /* @__PURE__ */ React37.createElement(Label3, { css: { mb: "$8" } }, "Resolution"), tooltipText && /* @__PURE__ */ React37.createElement(Tooltip, { title: tooltipText }, /* @__PURE__ */ React37.createElement("div", null, /* @__PURE__ */ React37.createElement(InfoIcon, { color: "#B0C3DB" })))), /* @__PURE__ */ React37.createElement(
|
|
4756
4750
|
Flex,
|
|
4757
4751
|
{
|
|
4758
4752
|
justify: "between",
|
|
@@ -4760,7 +4754,7 @@ var ResolutionInput = ({ onResolutionChange, disabled, tooltipText, css: css2, t
|
|
|
4760
4754
|
gap: 2,
|
|
4761
4755
|
direction: "column"
|
|
4762
4756
|
},
|
|
4763
|
-
/* @__PURE__ */
|
|
4757
|
+
/* @__PURE__ */ React37.createElement(Flex, { justify: "between", gap: 2 }, /* @__PURE__ */ React37.createElement(Flex, { direction: "column", css: { width: "50%" } }, /* @__PURE__ */ React37.createElement(Text, { variant: "xs" }, "Width"), /* @__PURE__ */ React37.createElement(
|
|
4764
4758
|
Input,
|
|
4765
4759
|
{
|
|
4766
4760
|
"data-testid": `${testId}_width`,
|
|
@@ -4774,7 +4768,7 @@ var ResolutionInput = ({ onResolutionChange, disabled, tooltipText, css: css2, t
|
|
|
4774
4768
|
onBlur: () => onResolutionChange(resolution),
|
|
4775
4769
|
type: "number"
|
|
4776
4770
|
}
|
|
4777
|
-
)), /* @__PURE__ */
|
|
4771
|
+
)), /* @__PURE__ */ React37.createElement(Flex, { direction: "column", css: { width: "50%" } }, /* @__PURE__ */ React37.createElement(Text, { variant: "xs" }, "Height"), /* @__PURE__ */ React37.createElement(
|
|
4778
4772
|
Input,
|
|
4779
4773
|
{
|
|
4780
4774
|
"data-testid": `${testId}_height`,
|
|
@@ -4794,17 +4788,17 @@ var ResolutionInput = ({ onResolutionChange, disabled, tooltipText, css: css2, t
|
|
|
4794
4788
|
|
|
4795
4789
|
// src/Prebuilt/components/Streaming/RTMPStreaming.jsx
|
|
4796
4790
|
init_define_process_env();
|
|
4797
|
-
import
|
|
4791
|
+
import React39, { useEffect as useEffect21, useRef as useRef7, useState as useState16 } from "react";
|
|
4798
4792
|
import { useHMSActions as useHMSActions11, useRecordingStreaming as useRecordingStreaming3 } from "@100mslive/react-sdk";
|
|
4799
4793
|
import { AddCircleIcon, EndStreamIcon, GoLiveIcon as GoLiveIcon2, PencilIcon, SettingsIcon, TrashIcon } from "@100mslive/react-icons";
|
|
4800
4794
|
|
|
4801
4795
|
// src/Prebuilt/components/Streaming/Common.jsx
|
|
4802
4796
|
init_define_process_env();
|
|
4803
|
-
import
|
|
4797
|
+
import React38 from "react";
|
|
4804
4798
|
import { selectPermissions as selectPermissions2, useHMSStore as useHMSStore12 } from "@100mslive/react-sdk";
|
|
4805
4799
|
import { ChevronLeftIcon, ChevronRightIcon, CrossIcon as CrossIcon5, RecordIcon } from "@100mslive/react-icons";
|
|
4806
4800
|
var StreamCard = ({ title, subtitle, Icon: Icon2, imgSrc = "", css: css2 = {}, onClick, testId }) => {
|
|
4807
|
-
return /* @__PURE__ */
|
|
4801
|
+
return /* @__PURE__ */ React38.createElement(
|
|
4808
4802
|
Flex,
|
|
4809
4803
|
{
|
|
4810
4804
|
css: __spreadValues({
|
|
@@ -4819,21 +4813,21 @@ var StreamCard = ({ title, subtitle, Icon: Icon2, imgSrc = "", css: css2 = {}, o
|
|
|
4819
4813
|
"data-testid": testId,
|
|
4820
4814
|
onClick
|
|
4821
4815
|
},
|
|
4822
|
-
/* @__PURE__ */
|
|
4823
|
-
/* @__PURE__ */
|
|
4824
|
-
/* @__PURE__ */
|
|
4816
|
+
/* @__PURE__ */ React38.createElement(Text, { css: { alignSelf: "center", p: "$4" } }, imgSrc ? /* @__PURE__ */ React38.createElement("img", { src: imgSrc, height: 40, width: 40 }) : /* @__PURE__ */ React38.createElement(Icon2, { width: 40, height: 40 })),
|
|
4817
|
+
/* @__PURE__ */ React38.createElement(Box, { css: { flex: "1 1 0", mx: "$8" } }, /* @__PURE__ */ React38.createElement(Text, { variant: "h6", css: { mb: "$4" } }, title), /* @__PURE__ */ React38.createElement(Text, { variant: "sm", css: { color: "$on_surface_medium" } }, subtitle)),
|
|
4818
|
+
/* @__PURE__ */ React38.createElement(Text, { css: { alignSelf: "center" } }, /* @__PURE__ */ React38.createElement(ChevronRightIcon, null))
|
|
4825
4819
|
);
|
|
4826
4820
|
};
|
|
4827
4821
|
var ContentHeader = ({ onBack, title, content }) => {
|
|
4828
|
-
return /* @__PURE__ */
|
|
4822
|
+
return /* @__PURE__ */ React38.createElement(Flex, { css: { w: "100%", py: "$8", px: "$10", cursor: "pointer" } }, /* @__PURE__ */ React38.createElement(
|
|
4829
4823
|
Text,
|
|
4830
4824
|
{
|
|
4831
4825
|
css: { p: "$2", bg: "$surface_bright", r: "$round", alignSelf: "center" },
|
|
4832
4826
|
onClick: onBack,
|
|
4833
4827
|
"data-testid": "go_back"
|
|
4834
4828
|
},
|
|
4835
|
-
/* @__PURE__ */
|
|
4836
|
-
), /* @__PURE__ */
|
|
4829
|
+
/* @__PURE__ */ React38.createElement(ChevronLeftIcon, { width: 16, height: 16 })
|
|
4830
|
+
), /* @__PURE__ */ React38.createElement(Box, { css: { flex: "1 1 0", mx: "$8" } }, /* @__PURE__ */ React38.createElement(
|
|
4837
4831
|
Text,
|
|
4838
4832
|
{
|
|
4839
4833
|
variant: "tiny",
|
|
@@ -4844,10 +4838,10 @@ var ContentHeader = ({ onBack, title, content }) => {
|
|
|
4844
4838
|
}
|
|
4845
4839
|
},
|
|
4846
4840
|
title
|
|
4847
|
-
), /* @__PURE__ */
|
|
4841
|
+
), /* @__PURE__ */ React38.createElement(Text, { variant: "h6" }, content)), /* @__PURE__ */ React38.createElement(IconButton, { onClick: onBack, css: { alignSelf: "flex-start" }, "data-testid": "close_stream_section" }, /* @__PURE__ */ React38.createElement(CrossIcon5, { width: 16, height: 16 })));
|
|
4848
4842
|
};
|
|
4849
4843
|
var Container3 = ({ children, rounded = false }) => {
|
|
4850
|
-
return /* @__PURE__ */
|
|
4844
|
+
return /* @__PURE__ */ React38.createElement(
|
|
4851
4845
|
Box,
|
|
4852
4846
|
{
|
|
4853
4847
|
css: {
|
|
@@ -4868,23 +4862,23 @@ var Container3 = ({ children, rounded = false }) => {
|
|
|
4868
4862
|
);
|
|
4869
4863
|
};
|
|
4870
4864
|
var ContentBody = ({ Icon: Icon2, title, removeVerticalPadding = false, children }) => {
|
|
4871
|
-
return /* @__PURE__ */
|
|
4865
|
+
return /* @__PURE__ */ React38.createElement(Box, { css: { p: removeVerticalPadding ? "$0 $10" : "$10" } }, /* @__PURE__ */ React38.createElement(Text, { css: { display: "flex", alignItems: "center", mb: "$4" } }, /* @__PURE__ */ React38.createElement(Icon2, null), /* @__PURE__ */ React38.createElement(Text, { as: "span", css: { fontWeight: "$semiBold", ml: "$4" } }, title)), /* @__PURE__ */ React38.createElement(Text, { variant: "sm", css: { color: "$on_surface_medium" } }, children));
|
|
4872
4866
|
};
|
|
4873
4867
|
var RecordStream = ({ record, setRecord, testId }) => {
|
|
4874
4868
|
const permissions = useHMSStore12(selectPermissions2);
|
|
4875
|
-
return (permissions == null ? void 0 : permissions.browserRecording) ? /* @__PURE__ */
|
|
4869
|
+
return (permissions == null ? void 0 : permissions.browserRecording) ? /* @__PURE__ */ React38.createElement(Flex, { align: "center", css: { bg: "$surface_bright", m: "$8 $10", p: "$8", r: "$0" } }, /* @__PURE__ */ React38.createElement(Text, { css: { color: "$alert_error_default" } }, /* @__PURE__ */ React38.createElement(RecordIcon, null)), /* @__PURE__ */ React38.createElement(Text, { variant: "sm", css: { flex: "1 1 0", mx: "$8" } }, "Record the stream"), /* @__PURE__ */ React38.createElement(Switch, { checked: record, onCheckedChange: setRecord, "data-testid": testId })) : null;
|
|
4876
4870
|
};
|
|
4877
4871
|
var ErrorText = ({ error }) => {
|
|
4878
4872
|
if (!error) {
|
|
4879
4873
|
return null;
|
|
4880
4874
|
}
|
|
4881
|
-
return /* @__PURE__ */
|
|
4875
|
+
return /* @__PURE__ */ React38.createElement(Text, { variant: "sm", css: { mb: "$8", color: "$alert_error_default" } }, error);
|
|
4882
4876
|
};
|
|
4883
4877
|
|
|
4884
4878
|
// src/Prebuilt/components/Streaming/RTMPStreaming.jsx
|
|
4885
4879
|
var RTMPStreaming = ({ onBack }) => {
|
|
4886
4880
|
const { isRTMPRunning } = useRecordingStreaming3();
|
|
4887
|
-
return /* @__PURE__ */
|
|
4881
|
+
return /* @__PURE__ */ React39.createElement(Container3, null, /* @__PURE__ */ React39.createElement(ContentHeader, { title: "Start Streaming", content: "Choose a destination", onBack }), /* @__PURE__ */ React39.createElement(ContentBody, { Icon: SettingsIcon, title: "RTMP" }, "Live Stream your call to Twitch, YouTube, Facebook and any app which supports RTMP, all at the same time"), !isRTMPRunning ? /* @__PURE__ */ React39.createElement(StartRTMP, null) : /* @__PURE__ */ React39.createElement(EndRTMP, null));
|
|
4888
4882
|
};
|
|
4889
4883
|
var StartRTMP = () => {
|
|
4890
4884
|
const [rtmpPreference = [], setRTMPPreference] = useUserPreferences(UserPreferencesKeys.RTMP_URLS);
|
|
@@ -4904,7 +4898,7 @@ var StartRTMP = () => {
|
|
|
4904
4898
|
const [resolution, setResolution] = useState16(RTMP_RECORD_DEFAULT_RESOLUTION);
|
|
4905
4899
|
const [isRTMPStarted, setRTMPStarted] = useSetAppDataByKey(APP_DATA.rtmpStarted);
|
|
4906
4900
|
const hasRTMPURL = rtmpStreams.some((value) => value.rtmpURL && value.streamKey);
|
|
4907
|
-
return /* @__PURE__ */
|
|
4901
|
+
return /* @__PURE__ */ React39.createElement(
|
|
4908
4902
|
Box,
|
|
4909
4903
|
{
|
|
4910
4904
|
css: { overflowY: "auto" },
|
|
@@ -4913,8 +4907,8 @@ var StartRTMP = () => {
|
|
|
4913
4907
|
e.preventDefault();
|
|
4914
4908
|
}
|
|
4915
4909
|
},
|
|
4916
|
-
rtmpStreams.length > 0 && /* @__PURE__ */
|
|
4917
|
-
return /* @__PURE__ */
|
|
4910
|
+
rtmpStreams.length > 0 && /* @__PURE__ */ React39.createElement(Box, { css: { px: "$10" } }, /* @__PURE__ */ React39.createElement(Accordion.Root, { type: "single", collapsible: true, defaultValue: rtmpStreams[0].id }, rtmpStreams.map((rtmp, index) => {
|
|
4911
|
+
return /* @__PURE__ */ React39.createElement(
|
|
4918
4912
|
Accordion.Item,
|
|
4919
4913
|
{
|
|
4920
4914
|
value: rtmp.id,
|
|
@@ -4925,11 +4919,11 @@ var StartRTMP = () => {
|
|
|
4925
4919
|
my: "$4"
|
|
4926
4920
|
}
|
|
4927
4921
|
},
|
|
4928
|
-
/* @__PURE__ */
|
|
4929
|
-
/* @__PURE__ */
|
|
4922
|
+
/* @__PURE__ */ React39.createElement(AccordionHeader2, { rtmp, setRTMPStreams }),
|
|
4923
|
+
/* @__PURE__ */ React39.createElement(Accordion.Content, { css: { px: "$8", py: 0 } }, /* @__PURE__ */ React39.createElement(RTMPForm, __spreadProps(__spreadValues({}, rtmp), { setRTMPStreams, testId: `${index}_rtmp` })))
|
|
4930
4924
|
);
|
|
4931
4925
|
}))),
|
|
4932
|
-
/* @__PURE__ */
|
|
4926
|
+
/* @__PURE__ */ React39.createElement(
|
|
4933
4927
|
ResolutionInput,
|
|
4934
4928
|
{
|
|
4935
4929
|
testId: "rtmp_resolution",
|
|
@@ -4942,8 +4936,8 @@ var StartRTMP = () => {
|
|
|
4942
4936
|
}
|
|
4943
4937
|
}
|
|
4944
4938
|
),
|
|
4945
|
-
/* @__PURE__ */
|
|
4946
|
-
/* @__PURE__ */
|
|
4939
|
+
/* @__PURE__ */ React39.createElement(RecordStream, { record, setRecord, testId: "rtmp_recording" }),
|
|
4940
|
+
/* @__PURE__ */ React39.createElement(Box, { css: { p: "$8 $10", "@lg": { display: "flex", gap: "$4" } } }, rtmpStreams.length < 3 && /* @__PURE__ */ React39.createElement(
|
|
4947
4941
|
Button,
|
|
4948
4942
|
{
|
|
4949
4943
|
"data-testid": "add_stream",
|
|
@@ -4963,9 +4957,9 @@ var StartRTMP = () => {
|
|
|
4963
4957
|
]);
|
|
4964
4958
|
}
|
|
4965
4959
|
},
|
|
4966
|
-
/* @__PURE__ */
|
|
4960
|
+
/* @__PURE__ */ React39.createElement(AddCircleIcon, null),
|
|
4967
4961
|
" Add Stream"
|
|
4968
|
-
), /* @__PURE__ */
|
|
4962
|
+
), /* @__PURE__ */ React39.createElement(
|
|
4969
4963
|
Button,
|
|
4970
4964
|
{
|
|
4971
4965
|
"data-testid": "start_rtmp",
|
|
@@ -4998,9 +4992,9 @@ var StartRTMP = () => {
|
|
|
4998
4992
|
}
|
|
4999
4993
|
})
|
|
5000
4994
|
},
|
|
5001
|
-
isRTMPStarted ? /* @__PURE__ */
|
|
4995
|
+
isRTMPStarted ? /* @__PURE__ */ React39.createElement(Loading, { size: 24, color: "currentColor" }) : /* @__PURE__ */ React39.createElement(GoLiveIcon2, null),
|
|
5002
4996
|
isRTMPStarted ? "Starting stream..." : "Go Live"
|
|
5003
|
-
), /* @__PURE__ */
|
|
4997
|
+
), /* @__PURE__ */ React39.createElement(ErrorText, { error }))
|
|
5004
4998
|
);
|
|
5005
4999
|
};
|
|
5006
5000
|
var EndRTMP = () => {
|
|
@@ -5013,7 +5007,7 @@ var EndRTMP = () => {
|
|
|
5013
5007
|
setInProgress(false);
|
|
5014
5008
|
}
|
|
5015
5009
|
}, [inProgress, isRTMPRunning]);
|
|
5016
|
-
return /* @__PURE__ */
|
|
5010
|
+
return /* @__PURE__ */ React39.createElement(Box, { css: { p: "$4 $10" } }, /* @__PURE__ */ React39.createElement(ErrorText, { error }), /* @__PURE__ */ React39.createElement(
|
|
5017
5011
|
Button,
|
|
5018
5012
|
{
|
|
5019
5013
|
"data-testid": "stop_rtmp",
|
|
@@ -5032,19 +5026,19 @@ var EndRTMP = () => {
|
|
|
5032
5026
|
}
|
|
5033
5027
|
})
|
|
5034
5028
|
},
|
|
5035
|
-
/* @__PURE__ */
|
|
5029
|
+
/* @__PURE__ */ React39.createElement(EndStreamIcon, null),
|
|
5036
5030
|
"End Stream"
|
|
5037
5031
|
));
|
|
5038
5032
|
};
|
|
5039
5033
|
var ActionIcon = ({ icon: Icon2, onClick }) => {
|
|
5040
|
-
return /* @__PURE__ */
|
|
5034
|
+
return /* @__PURE__ */ React39.createElement(Text, { as: "span", css: { mx: "$2", cursor: "pointer" }, onClick }, /* @__PURE__ */ React39.createElement(Icon2, { width: 16, height: 16 }));
|
|
5041
5035
|
};
|
|
5042
5036
|
var FormLabel = ({ id, children }) => {
|
|
5043
|
-
return /* @__PURE__ */
|
|
5037
|
+
return /* @__PURE__ */ React39.createElement(Label3, { htmlFor: id, css: { color: "$on_surface_high", my: "$4", fontSize: "$sm" } }, children);
|
|
5044
5038
|
};
|
|
5045
5039
|
var RTMPForm = ({ rtmpURL, id, streamKey, setRTMPStreams, testId }) => {
|
|
5046
5040
|
const formRef = useRef7(null);
|
|
5047
|
-
return /* @__PURE__ */
|
|
5041
|
+
return /* @__PURE__ */ React39.createElement(Flex, { id, direction: "column", css: { mb: "$8", px: "$8" }, ref: formRef }, /* @__PURE__ */ React39.createElement(FormLabel, { id: "rtmpURL" }, "RTMP URL", /* @__PURE__ */ React39.createElement(Asterik, null)), /* @__PURE__ */ React39.createElement(
|
|
5048
5042
|
Input,
|
|
5049
5043
|
{
|
|
5050
5044
|
"data-testid": `${testId}_url`,
|
|
@@ -5064,7 +5058,7 @@ var RTMPForm = ({ rtmpURL, id, streamKey, setRTMPStreams, testId }) => {
|
|
|
5064
5058
|
},
|
|
5065
5059
|
required: true
|
|
5066
5060
|
}
|
|
5067
|
-
), /* @__PURE__ */
|
|
5061
|
+
), /* @__PURE__ */ React39.createElement(FormLabel, { id: "streamKey" }, "Stream Key", /* @__PURE__ */ React39.createElement(Asterik, null)), /* @__PURE__ */ React39.createElement(
|
|
5068
5062
|
Input,
|
|
5069
5063
|
{
|
|
5070
5064
|
placeholder: "Enter Stream Key",
|
|
@@ -5087,11 +5081,11 @@ var RTMPForm = ({ rtmpURL, id, streamKey, setRTMPStreams, testId }) => {
|
|
|
5087
5081
|
));
|
|
5088
5082
|
};
|
|
5089
5083
|
var Asterik = () => {
|
|
5090
|
-
return /* @__PURE__ */
|
|
5084
|
+
return /* @__PURE__ */ React39.createElement(Text, { variant: "sm", as: "span", css: { color: "$alert_error_default", mx: "$2" } }, "*");
|
|
5091
5085
|
};
|
|
5092
5086
|
var AccordionHeader2 = ({ rtmp, setRTMPStreams }) => {
|
|
5093
5087
|
const [edit, setEdit] = useState16(false);
|
|
5094
|
-
return /* @__PURE__ */
|
|
5088
|
+
return /* @__PURE__ */ React39.createElement(Accordion.Header, { css: { px: "$8" } }, edit ? /* @__PURE__ */ React39.createElement(
|
|
5095
5089
|
Input,
|
|
5096
5090
|
{
|
|
5097
5091
|
defaultValue: rtmp.name,
|
|
@@ -5111,7 +5105,7 @@ var AccordionHeader2 = ({ rtmp, setRTMPStreams }) => {
|
|
|
5111
5105
|
}
|
|
5112
5106
|
}
|
|
5113
5107
|
}
|
|
5114
|
-
) : /* @__PURE__ */
|
|
5108
|
+
) : /* @__PURE__ */ React39.createElement(Text, { css: { flex: "1 1 0" } }, rtmp.name), /* @__PURE__ */ React39.createElement(Flex, { css: { mx: "$4", gap: "$2" } }, /* @__PURE__ */ React39.createElement(
|
|
5115
5109
|
ActionIcon,
|
|
5116
5110
|
{
|
|
5117
5111
|
onClick: (e) => {
|
|
@@ -5120,7 +5114,7 @@ var AccordionHeader2 = ({ rtmp, setRTMPStreams }) => {
|
|
|
5120
5114
|
},
|
|
5121
5115
|
icon: PencilIcon
|
|
5122
5116
|
}
|
|
5123
|
-
), /* @__PURE__ */
|
|
5117
|
+
), /* @__PURE__ */ React39.createElement(
|
|
5124
5118
|
ActionIcon,
|
|
5125
5119
|
{
|
|
5126
5120
|
onClick: () => {
|
|
@@ -5153,7 +5147,7 @@ function getResolution(recordingResolution) {
|
|
|
5153
5147
|
|
|
5154
5148
|
// src/Prebuilt/components/Header/AdditionalRoomState.jsx
|
|
5155
5149
|
init_define_process_env();
|
|
5156
|
-
import
|
|
5150
|
+
import React40, { useState as useState18 } from "react";
|
|
5157
5151
|
import { selectLocalPeerID as selectLocalPeerID5, selectPeerSharingVideoPlaylist, useHMSStore as useHMSStore17, useScreenShare } from "@100mslive/react-sdk";
|
|
5158
5152
|
import {
|
|
5159
5153
|
AudioPlayerIcon,
|
|
@@ -5359,7 +5353,7 @@ var AdditionalRoomState = () => {
|
|
|
5359
5353
|
if (isPlaylistInactive && isAudioshareInactive && !shouldShowScreenShareState && !shouldShowVideoState && !whiteboardOwner) {
|
|
5360
5354
|
return null;
|
|
5361
5355
|
}
|
|
5362
|
-
return /* @__PURE__ */
|
|
5356
|
+
return /* @__PURE__ */ React40.createElement(Dropdown.Root, { open, onOpenChange: setOpen }, /* @__PURE__ */ React40.createElement(Dropdown.Trigger, { asChild: true }, /* @__PURE__ */ React40.createElement(
|
|
5363
5357
|
Flex,
|
|
5364
5358
|
{
|
|
5365
5359
|
align: "center",
|
|
@@ -5372,13 +5366,13 @@ var AdditionalRoomState = () => {
|
|
|
5372
5366
|
},
|
|
5373
5367
|
"data-testid": "record_status_dropdown"
|
|
5374
5368
|
},
|
|
5375
|
-
!isAudioshareInactive && /* @__PURE__ */
|
|
5376
|
-
shouldShowScreenShareState && /* @__PURE__ */
|
|
5377
|
-
shouldShowVideoState && /* @__PURE__ */
|
|
5378
|
-
!isPlaylistInactive && /* @__PURE__ */
|
|
5379
|
-
whiteboardOwner && /* @__PURE__ */
|
|
5380
|
-
/* @__PURE__ */
|
|
5381
|
-
)), /* @__PURE__ */
|
|
5369
|
+
!isAudioshareInactive && /* @__PURE__ */ React40.createElement(Tooltip, { title: "Screenshare Audio" }, /* @__PURE__ */ React40.createElement(Flex, { align: "center", css: { color: "$on_primary_high", mx: "$2" } }, /* @__PURE__ */ React40.createElement(MusicIcon, { width: 24, height: 24 }))),
|
|
5370
|
+
shouldShowScreenShareState && /* @__PURE__ */ React40.createElement(Tooltip, { title: "Screenshare" }, /* @__PURE__ */ React40.createElement(Flex, { align: "center", css: { color: "$on_primary_high", mx: "$2" } }, /* @__PURE__ */ React40.createElement(ShareScreenIcon, { width: 24, height: 24 }))),
|
|
5371
|
+
shouldShowVideoState && /* @__PURE__ */ React40.createElement(Tooltip, { title: "video playlist" }, /* @__PURE__ */ React40.createElement(Flex, { align: "center", css: { color: "$on_primary_high", mx: "$2" } }, /* @__PURE__ */ React40.createElement(VideoPlayerIcon, { width: 24, height: 24 }))),
|
|
5372
|
+
!isPlaylistInactive && /* @__PURE__ */ React40.createElement(Tooltip, { title: "Playlist Music" }, /* @__PURE__ */ React40.createElement(Flex, { align: "center", css: { color: "$on_primary_high", mx: "$2" } }, /* @__PURE__ */ React40.createElement(AudioPlayerIcon, { width: 24, height: 24 }))),
|
|
5373
|
+
whiteboardOwner && /* @__PURE__ */ React40.createElement(Tooltip, { title: "Whiteboard" }, /* @__PURE__ */ React40.createElement(Flex, { align: "center", css: { color: "$on_primary_high", mx: "$2" } }, /* @__PURE__ */ React40.createElement(PencilDrawIcon, { width: 24, height: 24 }))),
|
|
5374
|
+
/* @__PURE__ */ React40.createElement(Box, { css: { "@lg": { display: "none" }, color: "$on_surface_low" } }, open ? /* @__PURE__ */ React40.createElement(ChevronUpIcon4, null) : /* @__PURE__ */ React40.createElement(ChevronDownIcon4, null))
|
|
5375
|
+
)), /* @__PURE__ */ React40.createElement(Dropdown.Content, { sideOffset: 5, align: "end", css: { w: "$60" } }, !isPlaylistInactive && /* @__PURE__ */ React40.createElement(Dropdown.Item, { css: { color: "$on_primary_high" } }, /* @__PURE__ */ React40.createElement(AudioPlayerIcon, { width: 24, height: 24 }), /* @__PURE__ */ React40.createElement(Text, { variant: "sm", css: { ml: "$2", flex: "1 1 0" } }, "Playlist is playing"), playlist.peer.isLocal ? /* @__PURE__ */ React40.createElement(
|
|
5382
5376
|
Text,
|
|
5383
5377
|
{
|
|
5384
5378
|
variant: "sm",
|
|
@@ -5389,7 +5383,7 @@ var AdditionalRoomState = () => {
|
|
|
5389
5383
|
}
|
|
5390
5384
|
},
|
|
5391
5385
|
playlist.selection.playing ? "Pause" : "Play"
|
|
5392
|
-
) : /* @__PURE__ */
|
|
5386
|
+
) : /* @__PURE__ */ React40.createElement(
|
|
5393
5387
|
Text,
|
|
5394
5388
|
{
|
|
5395
5389
|
variant: "sm",
|
|
@@ -5400,7 +5394,7 @@ var AdditionalRoomState = () => {
|
|
|
5400
5394
|
}
|
|
5401
5395
|
},
|
|
5402
5396
|
playlist.track.volume === 0 ? "Unmute" : "Mute"
|
|
5403
|
-
)), !isAudioshareInactive && /* @__PURE__ */
|
|
5397
|
+
)), !isAudioshareInactive && /* @__PURE__ */ React40.createElement(Dropdown.Item, { css: { color: "$on_primary_high" } }, /* @__PURE__ */ React40.createElement(MusicIcon, { width: 24, height: 24 }), /* @__PURE__ */ React40.createElement(Text, { variant: "sm", css: { ml: "$2", flex: "1 1 0" } }, "Music is playing"), /* @__PURE__ */ React40.createElement(
|
|
5404
5398
|
Text,
|
|
5405
5399
|
{
|
|
5406
5400
|
variant: "sm",
|
|
@@ -5411,7 +5405,7 @@ var AdditionalRoomState = () => {
|
|
|
5411
5405
|
}
|
|
5412
5406
|
},
|
|
5413
5407
|
screenshareAudio.muted ? "Unmute" : "Mute"
|
|
5414
|
-
)), shouldShowScreenShareState && /* @__PURE__ */
|
|
5408
|
+
)), shouldShowScreenShareState && /* @__PURE__ */ React40.createElement(Dropdown.Item, { css: { color: "$on_primary_high" } }, /* @__PURE__ */ React40.createElement(ShareScreenIcon, { width: 24, height: 24 }), /* @__PURE__ */ React40.createElement(Text, { variant: "sm", css: { ml: "$2", flex: "1 1 0" } }, `Shared by: ${screenSharingPeerId === localPeerID ? "You" : screenSharingPeerName}`)), shouldShowVideoState && /* @__PURE__ */ React40.createElement(Dropdown.Item, { css: { color: "$on_primary_high" } }, /* @__PURE__ */ React40.createElement(VideoPlayerIcon, { width: 24, height: 24 }), /* @__PURE__ */ React40.createElement(Text, { variant: "sm", css: { ml: "$2", flex: "1 1 0" } }, `Shared by: ${peerSharingPlaylist.id === localPeerID ? "You" : peerSharingPlaylist.name}`)), whiteboardOwner && /* @__PURE__ */ React40.createElement(Dropdown.Item, { css: { color: "$on_primary_high" } }, /* @__PURE__ */ React40.createElement(PencilDrawIcon, { width: 24, height: 24 }), /* @__PURE__ */ React40.createElement(Text, { variant: "sm", css: { ml: "$2", flex: "1 1 0" } }, "Whiteboard Owner - ", whiteboardOwner.name, amIWhiteboardOwner && "(You)"), amIWhiteboardOwner && /* @__PURE__ */ React40.createElement(
|
|
5415
5409
|
Text,
|
|
5416
5410
|
{
|
|
5417
5411
|
variant: "sm",
|
|
@@ -5431,7 +5425,7 @@ var LiveStatus = () => {
|
|
|
5431
5425
|
if (!isHLSRunning && !isRTMPRunning) {
|
|
5432
5426
|
return null;
|
|
5433
5427
|
}
|
|
5434
|
-
return /* @__PURE__ */
|
|
5428
|
+
return /* @__PURE__ */ React41.createElement(Flex, { align: "center" }, /* @__PURE__ */ React41.createElement(Box, { css: { w: "$4", h: "$4", r: "$round", bg: "$alert_error_default", mr: "$2" } }), /* @__PURE__ */ React41.createElement(Text, null, "Live", /* @__PURE__ */ React41.createElement(Text, { as: "span", css: { "@md": { display: "none" } } }, "\xA0with ", isHLSRunning ? "HLS" : "RTMP")));
|
|
5435
5429
|
};
|
|
5436
5430
|
var RecordingStatus = () => {
|
|
5437
5431
|
const { isBrowserRecordingOn, isServerRecordingOn, isHLSRecordingOn, isRecordingOn } = useRecordingStreaming4();
|
|
@@ -5443,7 +5437,7 @@ var RecordingStatus = () => {
|
|
|
5443
5437
|
)) {
|
|
5444
5438
|
return null;
|
|
5445
5439
|
}
|
|
5446
|
-
return /* @__PURE__ */
|
|
5440
|
+
return /* @__PURE__ */ React41.createElement(
|
|
5447
5441
|
Tooltip,
|
|
5448
5442
|
{
|
|
5449
5443
|
title: getRecordingText({
|
|
@@ -5452,20 +5446,20 @@ var RecordingStatus = () => {
|
|
|
5452
5446
|
isHLSRecordingOn
|
|
5453
5447
|
})
|
|
5454
5448
|
},
|
|
5455
|
-
/* @__PURE__ */
|
|
5449
|
+
/* @__PURE__ */ React41.createElement(
|
|
5456
5450
|
Box,
|
|
5457
5451
|
{
|
|
5458
5452
|
css: {
|
|
5459
5453
|
color: "$alert_error_default"
|
|
5460
5454
|
}
|
|
5461
5455
|
},
|
|
5462
|
-
/* @__PURE__ */
|
|
5456
|
+
/* @__PURE__ */ React41.createElement(RecordIcon2, { width: 24, height: 24 })
|
|
5463
5457
|
)
|
|
5464
5458
|
);
|
|
5465
5459
|
};
|
|
5466
5460
|
var EndStream = () => {
|
|
5467
5461
|
const toggleStreaming = useSidepaneToggle(SIDE_PANE_OPTIONS.STREAMING);
|
|
5468
|
-
return /* @__PURE__ */
|
|
5462
|
+
return /* @__PURE__ */ React41.createElement(Button, { "data-testid": "end_stream", variant: "danger", icon: true, onClick: toggleStreaming }, /* @__PURE__ */ React41.createElement(WrenchIcon, null), "Manage Stream");
|
|
5469
5463
|
};
|
|
5470
5464
|
var StartRecording = () => {
|
|
5471
5465
|
const permissions = useHMSStore18(selectPermissions3);
|
|
@@ -5478,7 +5472,7 @@ var StartRecording = () => {
|
|
|
5478
5472
|
return null;
|
|
5479
5473
|
}
|
|
5480
5474
|
if (isBrowserRecordingOn) {
|
|
5481
|
-
return /* @__PURE__ */
|
|
5475
|
+
return /* @__PURE__ */ React41.createElement(Popover2.Root, { open, onOpenChange: setOpen }, /* @__PURE__ */ React41.createElement(Popover2.Trigger, { asChild: true }, /* @__PURE__ */ React41.createElement(Button, { variant: "danger", "data-testid": "stop_recording", icon: true, outlined: true, onClick: () => setOpen(true) }, /* @__PURE__ */ React41.createElement(RecordIcon2, null), /* @__PURE__ */ React41.createElement(Text, { as: "span", css: { "@md": { display: "none" }, color: "currentColor" } }, "Stop Recording"))), /* @__PURE__ */ React41.createElement(Popover2.Portal, null, /* @__PURE__ */ React41.createElement(Popover2.Content, { align: "end", sideOffset: 8, css: { w: "$64" } }, /* @__PURE__ */ React41.createElement(Text, { variant: "body", css: { color: "$on_surface_medium" } }, "Are you sure you want to end the recording?"), /* @__PURE__ */ React41.createElement(
|
|
5482
5476
|
Button,
|
|
5483
5477
|
{
|
|
5484
5478
|
"data-testid": "stop_recording_confirm",
|
|
@@ -5500,7 +5494,7 @@ var StartRecording = () => {
|
|
|
5500
5494
|
"Stop"
|
|
5501
5495
|
))));
|
|
5502
5496
|
}
|
|
5503
|
-
return /* @__PURE__ */
|
|
5497
|
+
return /* @__PURE__ */ React41.createElement(Popover2.Root, { open, onOpenChange: setOpen }, /* @__PURE__ */ React41.createElement(Popover2.Trigger, { asChild: true }, /* @__PURE__ */ React41.createElement(
|
|
5504
5498
|
Button,
|
|
5505
5499
|
{
|
|
5506
5500
|
"data-testid": "start_recording",
|
|
@@ -5509,16 +5503,16 @@ var StartRecording = () => {
|
|
|
5509
5503
|
disabled: recordingStarted || isStreamingOn,
|
|
5510
5504
|
onClick: () => setOpen(true)
|
|
5511
5505
|
},
|
|
5512
|
-
recordingStarted ? /* @__PURE__ */
|
|
5513
|
-
/* @__PURE__ */
|
|
5514
|
-
)), /* @__PURE__ */
|
|
5506
|
+
recordingStarted ? /* @__PURE__ */ React41.createElement(Loading, { size: 24, color: "currentColor" }) : /* @__PURE__ */ React41.createElement(RecordIcon2, null),
|
|
5507
|
+
/* @__PURE__ */ React41.createElement(Text, { as: "span", css: { "@md": { display: "none" }, color: "currentColor" } }, recordingStarted ? "Starting" : "Start", " Recording")
|
|
5508
|
+
)), /* @__PURE__ */ React41.createElement(Popover2.Content, { align: "end", sideOffset: 8, css: { w: "$64" } }, /* @__PURE__ */ React41.createElement(
|
|
5515
5509
|
ResolutionInput,
|
|
5516
5510
|
{
|
|
5517
5511
|
testId: "recording_resolution",
|
|
5518
5512
|
css: { flexDirection: "column", alignItems: "start" },
|
|
5519
5513
|
onResolutionChange: setResolution
|
|
5520
5514
|
}
|
|
5521
|
-
), /* @__PURE__ */
|
|
5515
|
+
), /* @__PURE__ */ React41.createElement(
|
|
5522
5516
|
Button,
|
|
5523
5517
|
{
|
|
5524
5518
|
"data-testid": "start_recording_confirm",
|
|
@@ -5560,12 +5554,12 @@ var StreamActions = () => {
|
|
|
5560
5554
|
const isMobile = useMedia3(config.media.md);
|
|
5561
5555
|
const { isStreamingOn } = useRecordingStreaming4();
|
|
5562
5556
|
const roomState = useHMSStore18(selectRoomState2);
|
|
5563
|
-
return /* @__PURE__ */
|
|
5557
|
+
return /* @__PURE__ */ React41.createElement(Flex, { align: "center", css: { gap: "$4" } }, /* @__PURE__ */ React41.createElement(AdditionalRoomState, null), /* @__PURE__ */ React41.createElement(Flex, { align: "center", css: { gap: "$4", "@md": { display: "none" } } }, roomState !== HMSRoomState2.Preview ? /* @__PURE__ */ React41.createElement(LiveStatus, null) : null, /* @__PURE__ */ React41.createElement(RecordingStatus, null)), isConnected && !isMobile ? /* @__PURE__ */ React41.createElement(StartRecording, null) : null, isConnected && (permissions.hlsStreaming || permissions.rtmpStreaming) && /* @__PURE__ */ React41.createElement(Fragment3, null, isStreamingOn ? /* @__PURE__ */ React41.createElement(EndStream, null) : /* @__PURE__ */ React41.createElement(GoLiveButton_default, null)));
|
|
5564
5558
|
};
|
|
5565
5559
|
|
|
5566
5560
|
// src/Prebuilt/components/Header/ConferencingHeader.jsx
|
|
5567
5561
|
var ConferencingHeader = () => {
|
|
5568
|
-
return /* @__PURE__ */
|
|
5562
|
+
return /* @__PURE__ */ React42.createElement(Flex, { justify: "between", align: "center", css: { position: "relative", height: "100%" } }, /* @__PURE__ */ React42.createElement(Flex, { align: "center", css: { position: "absolute", left: "$10" } }, /* @__PURE__ */ React42.createElement(SpeakerTag, null)), /* @__PURE__ */ React42.createElement(
|
|
5569
5563
|
Flex,
|
|
5570
5564
|
{
|
|
5571
5565
|
align: "center",
|
|
@@ -5575,19 +5569,19 @@ var ConferencingHeader = () => {
|
|
|
5575
5569
|
gap: "$4"
|
|
5576
5570
|
}
|
|
5577
5571
|
},
|
|
5578
|
-
/* @__PURE__ */
|
|
5579
|
-
/* @__PURE__ */
|
|
5572
|
+
/* @__PURE__ */ React42.createElement(StreamActions, null),
|
|
5573
|
+
/* @__PURE__ */ React42.createElement(ParticipantCount, null)
|
|
5580
5574
|
));
|
|
5581
5575
|
};
|
|
5582
5576
|
|
|
5583
5577
|
// src/Prebuilt/components/Header/StreamingHeader.jsx
|
|
5584
5578
|
init_define_process_env();
|
|
5585
|
-
import
|
|
5579
|
+
import React46 from "react";
|
|
5586
5580
|
import { useMedia as useMedia4 } from "react-use";
|
|
5587
5581
|
|
|
5588
5582
|
// src/Prebuilt/components/EmojiReaction.jsx
|
|
5589
5583
|
init_define_process_env();
|
|
5590
|
-
import
|
|
5584
|
+
import React43, { Fragment as Fragment4, useCallback as useCallback13, useMemo as useMemo4, useState as useState20 } from "react";
|
|
5591
5585
|
import data from "@emoji-mart/data/sets/14/apple.json";
|
|
5592
5586
|
import { init } from "emoji-mart";
|
|
5593
5587
|
import {
|
|
@@ -5667,7 +5661,7 @@ var EmojiReaction = () => {
|
|
|
5667
5661
|
if (!isConnected || localPeerRole === hlsViewerRole || !isFeatureEnabled) {
|
|
5668
5662
|
return null;
|
|
5669
5663
|
}
|
|
5670
|
-
return /* @__PURE__ */
|
|
5664
|
+
return /* @__PURE__ */ React43.createElement(Fragment4, null, /* @__PURE__ */ React43.createElement(Dropdown.Root, { open, onOpenChange: setOpen }, /* @__PURE__ */ React43.createElement(Dropdown.Trigger, { asChild: true, "data-testid": "emoji_reaction_btn" }, /* @__PURE__ */ React43.createElement(IconButton_default, null, /* @__PURE__ */ React43.createElement(Tooltip, { title: "Emoji reaction" }, /* @__PURE__ */ React43.createElement(EmojiIcon, null)))), /* @__PURE__ */ React43.createElement(Dropdown.Content, { sideOffset: 5, align: "center", css: { p: "$8", bg: "$surface_default" } }, emojiReactionList.map((emojiLine, index) => /* @__PURE__ */ React43.createElement(Flex, { key: index, justify: "between", css: { mb: "$8" } }, emojiLine.map((emoji) => /* @__PURE__ */ React43.createElement(EmojiContainer, { key: emoji.emojiId, onClick: () => sendReaction(emoji.emojiId) }, /* @__PURE__ */ React43.createElement("em-emoji", { id: emoji.emojiId, size: "100%", set: "apple" }))))), /* @__PURE__ */ React43.createElement("div", { style: { textAlign: "center" } }, /* @__PURE__ */ React43.createElement(
|
|
5671
5665
|
Text,
|
|
5672
5666
|
{
|
|
5673
5667
|
variant: "sm",
|
|
@@ -5678,7 +5672,7 @@ var EmojiReaction = () => {
|
|
|
5678
5672
|
},
|
|
5679
5673
|
"Reactions will be timed for Live Streaming viewers.",
|
|
5680
5674
|
" "
|
|
5681
|
-
), /* @__PURE__ */
|
|
5675
|
+
), /* @__PURE__ */ React43.createElement(
|
|
5682
5676
|
Text,
|
|
5683
5677
|
{
|
|
5684
5678
|
variant: "sm",
|
|
@@ -5688,7 +5682,7 @@ var EmojiReaction = () => {
|
|
|
5688
5682
|
fontWeight: "$semiBold"
|
|
5689
5683
|
}
|
|
5690
5684
|
},
|
|
5691
|
-
/* @__PURE__ */
|
|
5685
|
+
/* @__PURE__ */ React43.createElement(
|
|
5692
5686
|
"a",
|
|
5693
5687
|
{
|
|
5694
5688
|
href: HLS_TIMED_METADATA_DOC_URL,
|
|
@@ -5715,7 +5709,7 @@ var EmojiContainer = styled("span", {
|
|
|
5715
5709
|
|
|
5716
5710
|
// src/Prebuilt/components/LeaveRoom.jsx
|
|
5717
5711
|
init_define_process_env();
|
|
5718
|
-
import
|
|
5712
|
+
import React44, { Fragment as Fragment5, useState as useState21 } from "react";
|
|
5719
5713
|
import { useParams } from "react-router-dom";
|
|
5720
5714
|
import { selectIsConnectedToRoom as selectIsConnectedToRoom6, selectPermissions as selectPermissions4, useHMSActions as useHMSActions17, useHMSStore as useHMSStore20 } from "@100mslive/react-sdk";
|
|
5721
5715
|
import { AlertTriangleIcon, ExitIcon, HangUpIcon, VerticalMenuIcon as VerticalMenuIcon2 } from "@100mslive/react-icons";
|
|
@@ -5753,7 +5747,7 @@ var LeaveRoom = () => {
|
|
|
5753
5747
|
if (!permissions || !isConnected) {
|
|
5754
5748
|
return null;
|
|
5755
5749
|
}
|
|
5756
|
-
return /* @__PURE__ */
|
|
5750
|
+
return /* @__PURE__ */ React44.createElement(Fragment5, null, permissions.endRoom ? /* @__PURE__ */ React44.createElement(Flex, null, /* @__PURE__ */ React44.createElement(
|
|
5757
5751
|
LeaveIconButton,
|
|
5758
5752
|
{
|
|
5759
5753
|
variant: "danger",
|
|
@@ -5762,8 +5756,8 @@ var LeaveRoom = () => {
|
|
|
5762
5756
|
css: { borderTopRightRadius: 0, borderBottomRightRadius: 0 },
|
|
5763
5757
|
onClick: leaveRoom
|
|
5764
5758
|
},
|
|
5765
|
-
/* @__PURE__ */
|
|
5766
|
-
), /* @__PURE__ */
|
|
5759
|
+
/* @__PURE__ */ React44.createElement(Tooltip, { title: "Leave Room" }, !isStreamKit ? /* @__PURE__ */ React44.createElement(Box, null, /* @__PURE__ */ React44.createElement(HangUpIcon, { key: "hangUp" })) : /* @__PURE__ */ React44.createElement(Flex, { gap: 2 }, /* @__PURE__ */ React44.createElement(Box, { css: { "@md": { transform: "rotate(180deg)" } } }, /* @__PURE__ */ React44.createElement(ExitIcon, { key: "hangUp" })), /* @__PURE__ */ React44.createElement(Text, { css: { "@md": { display: "none" }, color: "inherit" }, variant: "button" }, "Leave Studio")))
|
|
5760
|
+
), /* @__PURE__ */ React44.createElement(Dropdown.Root, { open, onOpenChange: setOpen }, /* @__PURE__ */ React44.createElement(
|
|
5767
5761
|
Dropdown.Trigger,
|
|
5768
5762
|
{
|
|
5769
5763
|
asChild: true,
|
|
@@ -5773,8 +5767,8 @@ var LeaveRoom = () => {
|
|
|
5773
5767
|
}
|
|
5774
5768
|
}
|
|
5775
5769
|
},
|
|
5776
|
-
/* @__PURE__ */
|
|
5777
|
-
), /* @__PURE__ */
|
|
5770
|
+
/* @__PURE__ */ React44.createElement(MenuTriggerButton, { variant: "danger", "data-testid": "leave_end_dropdown_trigger" }, /* @__PURE__ */ React44.createElement(VerticalMenuIcon2, null))
|
|
5771
|
+
), /* @__PURE__ */ React44.createElement(Dropdown.Content, { css: { p: 0 }, alignOffset: -50, sideOffset: 10 }, /* @__PURE__ */ React44.createElement(
|
|
5778
5772
|
Dropdown.Item,
|
|
5779
5773
|
{
|
|
5780
5774
|
css: { w: "100%", bg: "rgba(178, 71, 81, 0.1)" },
|
|
@@ -5783,8 +5777,8 @@ var LeaveRoom = () => {
|
|
|
5783
5777
|
},
|
|
5784
5778
|
"data-testid": "end_room_btn"
|
|
5785
5779
|
},
|
|
5786
|
-
/* @__PURE__ */
|
|
5787
|
-
), /* @__PURE__ */
|
|
5780
|
+
/* @__PURE__ */ React44.createElement(Flex, { gap: 4 }, /* @__PURE__ */ React44.createElement(Box, { css: { color: "$alert_error_default" } }, /* @__PURE__ */ React44.createElement(AlertTriangleIcon, null)), /* @__PURE__ */ React44.createElement(Flex, { direction: "column", align: "start" }, /* @__PURE__ */ React44.createElement(Text, { variant: "lg", css: { c: "$alert_error_default" } }, "End Room for All"), /* @__PURE__ */ React44.createElement(Text, { variant: "sm", css: { c: "$on_surface_medium", mt: "$2" } }, "Warning: You can\u2019t undo this action")))
|
|
5781
|
+
), /* @__PURE__ */ React44.createElement(Dropdown.Item, { css: { bg: "$surface_default" }, onClick: leaveRoom, "data-testid": "just_leave_btn" }, /* @__PURE__ */ React44.createElement(Flex, { gap: 4 }, /* @__PURE__ */ React44.createElement(Box, null, /* @__PURE__ */ React44.createElement(ExitIcon, null)), /* @__PURE__ */ React44.createElement(Flex, { direction: "column", align: "start" }, /* @__PURE__ */ React44.createElement(Text, { variant: "lg" }, "Leave ", isStreamKit ? "Studio" : "Room"), /* @__PURE__ */ React44.createElement(Text, { variant: "sm", css: { c: "$on_surface_medium", mt: "$2" } }, "You can always rejoin later"))))))) : /* @__PURE__ */ React44.createElement(LeaveIconButton, { onClick: leaveRoom, variant: "danger", key: "LeaveRoom", "data-testid": "leave_room_btn" }, /* @__PURE__ */ React44.createElement(Tooltip, { title: "Leave Room" }, /* @__PURE__ */ React44.createElement(Box, null, isStreamKit ? /* @__PURE__ */ React44.createElement(Box, { css: { "@md": { transform: "rotate(180deg)" } } }, /* @__PURE__ */ React44.createElement(ExitIcon, null)) : /* @__PURE__ */ React44.createElement(HangUpIcon, { key: "hangUp" })))), /* @__PURE__ */ React44.createElement(
|
|
5788
5782
|
Dialog.Root,
|
|
5789
5783
|
{
|
|
5790
5784
|
open: showEndRoomModal,
|
|
@@ -5795,7 +5789,7 @@ var LeaveRoom = () => {
|
|
|
5795
5789
|
setShowEndRoomModal(value);
|
|
5796
5790
|
}
|
|
5797
5791
|
},
|
|
5798
|
-
/* @__PURE__ */
|
|
5792
|
+
/* @__PURE__ */ React44.createElement(DialogContent, { title: "End Room", Icon: HangUpIcon }, /* @__PURE__ */ React44.createElement(DialogCheckbox, { id: "lockRoom", title: "Disable future joins", value: lockRoom, onChange: setLockRoom }), /* @__PURE__ */ React44.createElement(DialogRow, { justify: "end" }, /* @__PURE__ */ React44.createElement(Button, { variant: "danger", onClick: endRoom, "data-testid": "lock_end_room" }, "End Room")))
|
|
5799
5793
|
));
|
|
5800
5794
|
};
|
|
5801
5795
|
var LeaveIconButton = styled(IconButton, {
|
|
@@ -5827,7 +5821,7 @@ var MenuTriggerButton = styled(LeaveIconButton, {
|
|
|
5827
5821
|
|
|
5828
5822
|
// src/Prebuilt/components/MetaActions.jsx
|
|
5829
5823
|
init_define_process_env();
|
|
5830
|
-
import
|
|
5824
|
+
import React45 from "react";
|
|
5831
5825
|
import { selectIsConnectedToRoom as selectIsConnectedToRoom7, useHMSStore as useHMSStore21 } from "@100mslive/react-sdk";
|
|
5832
5826
|
import { BrbIcon, HandIcon as HandIcon2 } from "@100mslive/react-icons";
|
|
5833
5827
|
var MetaActions = ({ isMobile = false, compact = false }) => {
|
|
@@ -5838,22 +5832,22 @@ var MetaActions = ({ isMobile = false, compact = false }) => {
|
|
|
5838
5832
|
if (!isConnected || !isHandRaiseEnabled && !isBRBEnabled) {
|
|
5839
5833
|
return null;
|
|
5840
5834
|
}
|
|
5841
|
-
return /* @__PURE__ */
|
|
5835
|
+
return /* @__PURE__ */ React45.createElement(Flex, { align: "center", css: { gap: compact ? "$4" : "$8" } }, isHandRaiseEnabled && /* @__PURE__ */ React45.createElement(Tooltip, { title: `${!isHandRaised ? "Raise" : "Unraise"} hand` }, /* @__PURE__ */ React45.createElement(
|
|
5842
5836
|
IconButton_default,
|
|
5843
5837
|
{
|
|
5844
5838
|
onClick: toggleHandRaise,
|
|
5845
5839
|
active: !isHandRaised,
|
|
5846
5840
|
"data-testid": isMobile ? "raise_hand_btn_mobile" : "raise_hand_btn"
|
|
5847
5841
|
},
|
|
5848
|
-
/* @__PURE__ */
|
|
5849
|
-
)), isBRBEnabled && /* @__PURE__ */
|
|
5842
|
+
/* @__PURE__ */ React45.createElement(HandIcon2, null)
|
|
5843
|
+
)), isBRBEnabled && /* @__PURE__ */ React45.createElement(Tooltip, { title: isBRBOn ? `I'm back` : `I'll be right back` }, /* @__PURE__ */ React45.createElement(IconButton_default, { onClick: toggleBRB, active: !isBRBOn, "data-testid": "brb_btn" }, /* @__PURE__ */ React45.createElement(BrbIcon, null))));
|
|
5850
5844
|
};
|
|
5851
5845
|
var MetaActions_default = MetaActions;
|
|
5852
5846
|
|
|
5853
5847
|
// src/Prebuilt/components/Header/StreamingHeader.jsx
|
|
5854
5848
|
var StreamingHeader = () => {
|
|
5855
5849
|
const isMobile = useMedia4(config.media.md);
|
|
5856
|
-
return /* @__PURE__ */
|
|
5850
|
+
return /* @__PURE__ */ React46.createElement(Flex, { justify: "between", align: "center", css: { position: "relative", height: "100%" } }, /* @__PURE__ */ React46.createElement(
|
|
5857
5851
|
Flex,
|
|
5858
5852
|
{
|
|
5859
5853
|
align: "center",
|
|
@@ -5862,9 +5856,9 @@ var StreamingHeader = () => {
|
|
|
5862
5856
|
left: "$10"
|
|
5863
5857
|
}
|
|
5864
5858
|
},
|
|
5865
|
-
isMobile ? /* @__PURE__ */
|
|
5866
|
-
/* @__PURE__ */
|
|
5867
|
-
), /* @__PURE__ */
|
|
5859
|
+
isMobile ? /* @__PURE__ */ React46.createElement(Flex, { align: "center", gap: 2 }, /* @__PURE__ */ React46.createElement(LeaveRoom, null), /* @__PURE__ */ React46.createElement(LiveStatus, null), /* @__PURE__ */ React46.createElement(RecordingStatus, null)) : null,
|
|
5860
|
+
/* @__PURE__ */ React46.createElement(SpeakerTag, null)
|
|
5861
|
+
), /* @__PURE__ */ React46.createElement(
|
|
5868
5862
|
Flex,
|
|
5869
5863
|
{
|
|
5870
5864
|
align: "center",
|
|
@@ -5874,14 +5868,14 @@ var StreamingHeader = () => {
|
|
|
5874
5868
|
gap: "$4"
|
|
5875
5869
|
}
|
|
5876
5870
|
},
|
|
5877
|
-
isMobile ? /* @__PURE__ */
|
|
5878
|
-
/* @__PURE__ */
|
|
5871
|
+
isMobile ? /* @__PURE__ */ React46.createElement(React46.Fragment, null, /* @__PURE__ */ React46.createElement(EmojiReaction, null), /* @__PURE__ */ React46.createElement(MetaActions_default, { compact: true })) : /* @__PURE__ */ React46.createElement(Flex, { css: { gap: "$4" } }, /* @__PURE__ */ React46.createElement(StreamActions, null)),
|
|
5872
|
+
/* @__PURE__ */ React46.createElement(ParticipantCount, null)
|
|
5879
5873
|
));
|
|
5880
5874
|
};
|
|
5881
5875
|
|
|
5882
5876
|
// src/Prebuilt/components/Header/Header.jsx
|
|
5883
5877
|
var Header2 = () => {
|
|
5884
|
-
return isStreamingKit() ? /* @__PURE__ */
|
|
5878
|
+
return isStreamingKit() ? /* @__PURE__ */ React47.createElement(StreamingHeader, null) : /* @__PURE__ */ React47.createElement(ConferencingHeader, null);
|
|
5885
5879
|
};
|
|
5886
5880
|
|
|
5887
5881
|
// src/Prebuilt/components/PostLeave.jsx
|
|
@@ -5890,7 +5884,7 @@ var PostLeave = () => {
|
|
|
5890
5884
|
const { showPreview, roomCode } = useHMSPrebuiltContext();
|
|
5891
5885
|
const { roomId, role } = useParams2();
|
|
5892
5886
|
const [previewPreference] = useUserPreferences(UserPreferencesKeys.PREVIEW, defaultPreviewPreference);
|
|
5893
|
-
return /* @__PURE__ */
|
|
5887
|
+
return /* @__PURE__ */ React48.createElement(Flex, { direction: "column", css: { size: "100%" } }, /* @__PURE__ */ React48.createElement(Box, { css: { h: "$18", "@md": { h: "$17" } }, "data-testid": "header" }, /* @__PURE__ */ React48.createElement(Header2, null)), /* @__PURE__ */ React48.createElement(
|
|
5894
5888
|
Flex,
|
|
5895
5889
|
{
|
|
5896
5890
|
justify: "center",
|
|
@@ -5898,9 +5892,9 @@ var PostLeave = () => {
|
|
|
5898
5892
|
align: "center",
|
|
5899
5893
|
css: { bg: "$background_dim", flex: "1 1 0", position: "relative" }
|
|
5900
5894
|
},
|
|
5901
|
-
/* @__PURE__ */
|
|
5902
|
-
/* @__PURE__ */
|
|
5903
|
-
/* @__PURE__ */
|
|
5895
|
+
/* @__PURE__ */ React48.createElement(Text, { variant: "h2", css: { fontWeight: "$semiBold" } }, "\u{1F44B}"),
|
|
5896
|
+
/* @__PURE__ */ React48.createElement(Text, { variant: "h4", css: { color: "$on_surface_high", fontWeight: "$semiBold", mt: "$12" } }, "You left the ", getRoutePrefix() ? "stream" : "room"),
|
|
5897
|
+
/* @__PURE__ */ React48.createElement(
|
|
5904
5898
|
Text,
|
|
5905
5899
|
{
|
|
5906
5900
|
variant: "body1",
|
|
@@ -5912,10 +5906,10 @@ var PostLeave = () => {
|
|
|
5912
5906
|
}
|
|
5913
5907
|
},
|
|
5914
5908
|
"Have a nice day",
|
|
5915
|
-
previewPreference.name && /* @__PURE__ */
|
|
5909
|
+
previewPreference.name && /* @__PURE__ */ React48.createElement(Box, { as: "span", css: __spreadValues({}, textEllipsis(100)) }, ", ", previewPreference.name),
|
|
5916
5910
|
"!"
|
|
5917
5911
|
),
|
|
5918
|
-
/* @__PURE__ */
|
|
5912
|
+
/* @__PURE__ */ React48.createElement(Flex, { css: { mt: "$14", gap: "$10", alignItems: "center" } }, /* @__PURE__ */ React48.createElement(Text, { variant: "body1", css: { color: "$on_surface_medium", fontWeight: "$regular" } }, "Left by mistake?"), /* @__PURE__ */ React48.createElement(
|
|
5919
5913
|
Button,
|
|
5920
5914
|
{
|
|
5921
5915
|
onClick: () => {
|
|
@@ -5927,8 +5921,8 @@ var PostLeave = () => {
|
|
|
5927
5921
|
},
|
|
5928
5922
|
"data-testid": "join_again_btn"
|
|
5929
5923
|
},
|
|
5930
|
-
/* @__PURE__ */
|
|
5931
|
-
/* @__PURE__ */
|
|
5924
|
+
/* @__PURE__ */ React48.createElement(ExitIcon2, null),
|
|
5925
|
+
/* @__PURE__ */ React48.createElement(Text, { css: { ml: "$3", fontWeight: "$semiBold", color: "inherit" } }, "Rejoin")
|
|
5932
5926
|
))
|
|
5933
5927
|
));
|
|
5934
5928
|
};
|
|
@@ -5936,19 +5930,19 @@ var PostLeave_default = PostLeave;
|
|
|
5936
5930
|
|
|
5937
5931
|
// src/Prebuilt/components/Preview/PreviewContainer.jsx
|
|
5938
5932
|
init_define_process_env();
|
|
5939
|
-
import
|
|
5933
|
+
import React69 from "react";
|
|
5940
5934
|
import { useParams as useParams3 } from "react-router-dom";
|
|
5941
5935
|
import { useSearchParam as useSearchParam4 } from "react-use";
|
|
5942
5936
|
import { HMSRoomState as HMSRoomState4, selectRoomState as selectRoomState4, useHMSStore as useHMSStore37 } from "@100mslive/react-sdk";
|
|
5943
5937
|
|
|
5944
5938
|
// src/Prebuilt/layouts/SidePane.jsx
|
|
5945
5939
|
init_define_process_env();
|
|
5946
|
-
import
|
|
5940
|
+
import React56 from "react";
|
|
5947
5941
|
import { selectAppData as selectAppData5, useHMSStore as useHMSStore30 } from "@100mslive/react-sdk";
|
|
5948
5942
|
|
|
5949
5943
|
// src/Prebuilt/components/Chat/Chat.jsx
|
|
5950
5944
|
init_define_process_env();
|
|
5951
|
-
import
|
|
5945
|
+
import React53, { useCallback as useCallback18, useEffect as useEffect27, useRef as useRef11, useState as useState26 } from "react";
|
|
5952
5946
|
import {
|
|
5953
5947
|
HMSNotificationTypes as HMSNotificationTypes9,
|
|
5954
5948
|
selectHMSMessagesCount,
|
|
@@ -5963,7 +5957,7 @@ import { ChevronDownIcon as ChevronDownIcon6, CrossIcon as CrossIcon7, PinIcon a
|
|
|
5963
5957
|
|
|
5964
5958
|
// src/Prebuilt/components/Chat/ChatBody.jsx
|
|
5965
5959
|
init_define_process_env();
|
|
5966
|
-
import
|
|
5960
|
+
import React49, { Fragment as Fragment6, useCallback as useCallback15, useEffect as useEffect24, useLayoutEffect, useRef as useRef8, useState as useState22 } from "react";
|
|
5967
5961
|
import { useInView } from "react-intersection-observer";
|
|
5968
5962
|
import AutoSizer from "react-virtualized-auto-sizer";
|
|
5969
5963
|
import { VariableSizeList } from "react-window";
|
|
@@ -6027,7 +6021,7 @@ var formatTime = (date) => {
|
|
|
6027
6021
|
return `${hours}:${mins} ${suffix}`;
|
|
6028
6022
|
};
|
|
6029
6023
|
var MessageTypeContainer = ({ left, right }) => {
|
|
6030
|
-
return /* @__PURE__ */
|
|
6024
|
+
return /* @__PURE__ */ React49.createElement(
|
|
6031
6025
|
Flex,
|
|
6032
6026
|
{
|
|
6033
6027
|
align: "center",
|
|
@@ -6039,16 +6033,16 @@ var MessageTypeContainer = ({ left, right }) => {
|
|
|
6039
6033
|
r: "$0"
|
|
6040
6034
|
}
|
|
6041
6035
|
},
|
|
6042
|
-
left && /* @__PURE__ */
|
|
6043
|
-
left && right && /* @__PURE__ */
|
|
6044
|
-
right && /* @__PURE__ */
|
|
6036
|
+
left && /* @__PURE__ */ React49.createElement(SenderName, { variant: "tiny", as: "span", css: { color: "$on_surface_medium" } }, left),
|
|
6037
|
+
left && right && /* @__PURE__ */ React49.createElement(Box, { css: { borderLeft: "1px solid $on_surface_low", mx: "$4", h: "$8" } }),
|
|
6038
|
+
right && /* @__PURE__ */ React49.createElement(SenderName, { as: "span", variant: "tiny" }, right)
|
|
6045
6039
|
);
|
|
6046
6040
|
};
|
|
6047
6041
|
var MessageType = ({ roles, hasCurrentUserSent, receiver }) => {
|
|
6048
6042
|
const peerName = useHMSStore23(selectPeerNameByID2(receiver));
|
|
6049
6043
|
const localPeerRoleName = useHMSStore23(selectLocalPeerRoleName4);
|
|
6050
6044
|
if (receiver) {
|
|
6051
|
-
return /* @__PURE__ */
|
|
6045
|
+
return /* @__PURE__ */ React49.createElement(
|
|
6052
6046
|
MessageTypeContainer,
|
|
6053
6047
|
{
|
|
6054
6048
|
left: hasCurrentUserSent ? `${peerName ? `TO ${peerName}` : ""}` : "TO YOU",
|
|
@@ -6057,7 +6051,7 @@ var MessageType = ({ roles, hasCurrentUserSent, receiver }) => {
|
|
|
6057
6051
|
);
|
|
6058
6052
|
}
|
|
6059
6053
|
if (roles && roles.length) {
|
|
6060
|
-
return /* @__PURE__ */
|
|
6054
|
+
return /* @__PURE__ */ React49.createElement(MessageTypeContainer, { left: "TO", right: hasCurrentUserSent ? roles.join(",") : localPeerRoleName });
|
|
6061
6055
|
}
|
|
6062
6056
|
return null;
|
|
6063
6057
|
};
|
|
@@ -6071,10 +6065,10 @@ var Link3 = styled("a", {
|
|
|
6071
6065
|
});
|
|
6072
6066
|
var AnnotisedMessage = ({ message }) => {
|
|
6073
6067
|
if (!message) {
|
|
6074
|
-
return /* @__PURE__ */
|
|
6068
|
+
return /* @__PURE__ */ React49.createElement(Fragment6, null);
|
|
6075
6069
|
}
|
|
6076
|
-
return /* @__PURE__ */
|
|
6077
|
-
(part) => URL_REGEX.test(part) ? /* @__PURE__ */
|
|
6070
|
+
return /* @__PURE__ */ React49.createElement(Fragment6, null, message.trim().split(/(\s)/).map(
|
|
6071
|
+
(part) => URL_REGEX.test(part) ? /* @__PURE__ */ React49.createElement(Link3, { href: part, key: part, target: "_blank", rel: "noopener noreferrer" }, part) : part
|
|
6078
6072
|
));
|
|
6079
6073
|
};
|
|
6080
6074
|
var getMessageType = ({ roles, receiver }) => {
|
|
@@ -6085,14 +6079,14 @@ var getMessageType = ({ roles, receiver }) => {
|
|
|
6085
6079
|
};
|
|
6086
6080
|
var ChatActions = ({ onPin }) => {
|
|
6087
6081
|
const [open, setOpen] = useState22(false);
|
|
6088
|
-
return /* @__PURE__ */
|
|
6082
|
+
return /* @__PURE__ */ React49.createElement(Dropdown.Root, { open, onOpenChange: setOpen }, /* @__PURE__ */ React49.createElement(Dropdown.Trigger, { asChild: true }, /* @__PURE__ */ React49.createElement(IconButton, null, /* @__PURE__ */ React49.createElement(Tooltip, { title: "More options" }, /* @__PURE__ */ React49.createElement(HorizontalMenuIcon, null)))), /* @__PURE__ */ React49.createElement(Dropdown.Portal, null, /* @__PURE__ */ React49.createElement(
|
|
6089
6083
|
Dropdown.Content,
|
|
6090
6084
|
{
|
|
6091
6085
|
sideOffset: 5,
|
|
6092
6086
|
align: "end",
|
|
6093
6087
|
css: { width: "$48", backgroundColor: "$surface_bright", py: "$0" }
|
|
6094
6088
|
},
|
|
6095
|
-
/* @__PURE__ */
|
|
6089
|
+
/* @__PURE__ */ React49.createElement(Dropdown.Item, { "data-testid": "pin_message_btn", onClick: onPin }, /* @__PURE__ */ React49.createElement(PinIcon, null), /* @__PURE__ */ React49.createElement(Text, { variant: "sm", css: { ml: "$4" } }, "Pin Message"))
|
|
6096
6090
|
)));
|
|
6097
6091
|
};
|
|
6098
6092
|
var SenderName = styled(Text, {
|
|
@@ -6102,7 +6096,7 @@ var SenderName = styled(Text, {
|
|
|
6102
6096
|
maxWidth: "24ch",
|
|
6103
6097
|
minWidth: 0
|
|
6104
6098
|
});
|
|
6105
|
-
var ChatMessage =
|
|
6099
|
+
var ChatMessage = React49.memo(({ index, style = {}, message, setRowHeight, onPin }) => {
|
|
6106
6100
|
const { ref, inView } = useInView({ threshold: 0.5, triggerOnce: true });
|
|
6107
6101
|
const rowRef = useRef8(null);
|
|
6108
6102
|
useEffect24(() => {
|
|
@@ -6123,7 +6117,7 @@ var ChatMessage = React50.memo(({ index, style = {}, message, setRowHeight, onPi
|
|
|
6123
6117
|
hmsActions.setMessageRead(true, message.id);
|
|
6124
6118
|
}
|
|
6125
6119
|
}, [message.read, hmsActions, inView, message.id]);
|
|
6126
|
-
return /* @__PURE__ */
|
|
6120
|
+
return /* @__PURE__ */ React49.createElement(Box, { ref, as: "div", css: { mb: "$10", pr: "$10" }, style }, /* @__PURE__ */ React49.createElement(
|
|
6127
6121
|
Flex,
|
|
6128
6122
|
{
|
|
6129
6123
|
ref: rowRef,
|
|
@@ -6139,7 +6133,7 @@ var ChatMessage = React50.memo(({ index, style = {}, message, setRowHeight, onPi
|
|
|
6139
6133
|
key: message.time,
|
|
6140
6134
|
"data-testid": "chat_msg"
|
|
6141
6135
|
},
|
|
6142
|
-
/* @__PURE__ */
|
|
6136
|
+
/* @__PURE__ */ React49.createElement(
|
|
6143
6137
|
Text,
|
|
6144
6138
|
{
|
|
6145
6139
|
css: {
|
|
@@ -6152,7 +6146,7 @@ var ChatMessage = React50.memo(({ index, style = {}, message, setRowHeight, onPi
|
|
|
6152
6146
|
},
|
|
6153
6147
|
as: "div"
|
|
6154
6148
|
},
|
|
6155
|
-
/* @__PURE__ */
|
|
6149
|
+
/* @__PURE__ */ React49.createElement(Flex, { align: "center" }, message.senderName === "You" || !message.senderName ? /* @__PURE__ */ React49.createElement(SenderName, { as: "span" }, message.senderName || "Anonymous") : /* @__PURE__ */ React49.createElement(Tooltip, { title: message.senderName, side: "top", align: "start" }, /* @__PURE__ */ React49.createElement(SenderName, { as: "span" }, message.senderName)), /* @__PURE__ */ React49.createElement(
|
|
6156
6150
|
Text,
|
|
6157
6151
|
{
|
|
6158
6152
|
as: "span",
|
|
@@ -6165,7 +6159,7 @@ var ChatMessage = React50.memo(({ index, style = {}, message, setRowHeight, onPi
|
|
|
6165
6159
|
},
|
|
6166
6160
|
formatTime(message.time)
|
|
6167
6161
|
)),
|
|
6168
|
-
/* @__PURE__ */
|
|
6162
|
+
/* @__PURE__ */ React49.createElement(
|
|
6169
6163
|
MessageType,
|
|
6170
6164
|
{
|
|
6171
6165
|
hasCurrentUserSent: message.sender === localPeerId,
|
|
@@ -6173,9 +6167,9 @@ var ChatMessage = React50.memo(({ index, style = {}, message, setRowHeight, onPi
|
|
|
6173
6167
|
roles: message.recipientRoles
|
|
6174
6168
|
}
|
|
6175
6169
|
),
|
|
6176
|
-
showPinAction && /* @__PURE__ */
|
|
6170
|
+
showPinAction && /* @__PURE__ */ React49.createElement(ChatActions, { onPin })
|
|
6177
6171
|
),
|
|
6178
|
-
/* @__PURE__ */
|
|
6172
|
+
/* @__PURE__ */ React49.createElement(
|
|
6179
6173
|
Text,
|
|
6180
6174
|
{
|
|
6181
6175
|
variant: "body2",
|
|
@@ -6188,11 +6182,11 @@ var ChatMessage = React50.memo(({ index, style = {}, message, setRowHeight, onPi
|
|
|
6188
6182
|
},
|
|
6189
6183
|
onClick: (e) => e.stopPropagation()
|
|
6190
6184
|
},
|
|
6191
|
-
/* @__PURE__ */
|
|
6185
|
+
/* @__PURE__ */ React49.createElement(AnnotisedMessage, { message: message.message })
|
|
6192
6186
|
)
|
|
6193
6187
|
));
|
|
6194
6188
|
});
|
|
6195
|
-
var ChatList =
|
|
6189
|
+
var ChatList = React49.forwardRef(
|
|
6196
6190
|
({ width, height, setRowHeight, getRowHeight, messages, scrollToBottom }, listRef) => {
|
|
6197
6191
|
const { setPinnedMessage } = useSetPinnedMessage();
|
|
6198
6192
|
useLayoutEffect(() => {
|
|
@@ -6200,7 +6194,7 @@ var ChatList = React50.forwardRef(
|
|
|
6200
6194
|
scrollToBottom(1);
|
|
6201
6195
|
}
|
|
6202
6196
|
}, [listRef]);
|
|
6203
|
-
return /* @__PURE__ */
|
|
6197
|
+
return /* @__PURE__ */ React49.createElement(
|
|
6204
6198
|
VariableSizeList,
|
|
6205
6199
|
{
|
|
6206
6200
|
ref: listRef,
|
|
@@ -6212,7 +6206,7 @@ var ChatList = React50.forwardRef(
|
|
|
6212
6206
|
overflowX: "hidden"
|
|
6213
6207
|
}
|
|
6214
6208
|
},
|
|
6215
|
-
({ index, style }) => /* @__PURE__ */
|
|
6209
|
+
({ index, style }) => /* @__PURE__ */ React49.createElement(
|
|
6216
6210
|
ChatMessage,
|
|
6217
6211
|
{
|
|
6218
6212
|
style,
|
|
@@ -6226,7 +6220,7 @@ var ChatList = React50.forwardRef(
|
|
|
6226
6220
|
);
|
|
6227
6221
|
}
|
|
6228
6222
|
);
|
|
6229
|
-
var VirtualizedChatMessages =
|
|
6223
|
+
var VirtualizedChatMessages = React49.forwardRef(({ messages, scrollToBottom }, listRef) => {
|
|
6230
6224
|
const rowHeights = useRef8({});
|
|
6231
6225
|
function getRowHeight(index) {
|
|
6232
6226
|
return rowHeights.current[index] + 16 || 72;
|
|
@@ -6238,7 +6232,7 @@ var VirtualizedChatMessages = React50.forwardRef(({ messages, scrollToBottom },
|
|
|
6238
6232
|
},
|
|
6239
6233
|
[listRef]
|
|
6240
6234
|
);
|
|
6241
|
-
return /* @__PURE__ */
|
|
6235
|
+
return /* @__PURE__ */ React49.createElement(
|
|
6242
6236
|
Box,
|
|
6243
6237
|
{
|
|
6244
6238
|
css: {
|
|
@@ -6247,14 +6241,14 @@ var VirtualizedChatMessages = React50.forwardRef(({ messages, scrollToBottom },
|
|
|
6247
6241
|
},
|
|
6248
6242
|
as: "div"
|
|
6249
6243
|
},
|
|
6250
|
-
/* @__PURE__ */
|
|
6244
|
+
/* @__PURE__ */ React49.createElement(
|
|
6251
6245
|
AutoSizer,
|
|
6252
6246
|
{
|
|
6253
6247
|
style: {
|
|
6254
6248
|
width: "90%"
|
|
6255
6249
|
}
|
|
6256
6250
|
},
|
|
6257
|
-
({ height, width }) => /* @__PURE__ */
|
|
6251
|
+
({ height, width }) => /* @__PURE__ */ React49.createElement(
|
|
6258
6252
|
ChatList,
|
|
6259
6253
|
{
|
|
6260
6254
|
width,
|
|
@@ -6269,11 +6263,11 @@ var VirtualizedChatMessages = React50.forwardRef(({ messages, scrollToBottom },
|
|
|
6269
6263
|
)
|
|
6270
6264
|
);
|
|
6271
6265
|
});
|
|
6272
|
-
var ChatBody =
|
|
6266
|
+
var ChatBody = React49.forwardRef(({ role, peerId, scrollToBottom }, listRef) => {
|
|
6273
6267
|
const storeMessageSelector = role ? selectMessagesByRole(role) : peerId ? selectMessagesByPeerID(peerId) : selectHMSMessages;
|
|
6274
6268
|
const messages = useHMSStore23(storeMessageSelector) || [];
|
|
6275
6269
|
if (messages.length === 0) {
|
|
6276
|
-
return /* @__PURE__ */
|
|
6270
|
+
return /* @__PURE__ */ React49.createElement(
|
|
6277
6271
|
Flex,
|
|
6278
6272
|
{
|
|
6279
6273
|
css: {
|
|
@@ -6285,15 +6279,15 @@ var ChatBody = React50.forwardRef(({ role, peerId, scrollToBottom }, listRef) =>
|
|
|
6285
6279
|
align: "center",
|
|
6286
6280
|
justify: "center"
|
|
6287
6281
|
},
|
|
6288
|
-
/* @__PURE__ */
|
|
6282
|
+
/* @__PURE__ */ React49.createElement(Text, null, "There are no messages here")
|
|
6289
6283
|
);
|
|
6290
6284
|
}
|
|
6291
|
-
return /* @__PURE__ */
|
|
6285
|
+
return /* @__PURE__ */ React49.createElement(Fragment6, null, /* @__PURE__ */ React49.createElement(VirtualizedChatMessages, { messages, scrollToBottom, ref: listRef }));
|
|
6292
6286
|
});
|
|
6293
6287
|
|
|
6294
6288
|
// src/Prebuilt/components/Chat/ChatFooter.jsx
|
|
6295
6289
|
init_define_process_env();
|
|
6296
|
-
import
|
|
6290
|
+
import React50, { useCallback as useCallback17, useEffect as useEffect26, useRef as useRef10, useState as useState23 } from "react";
|
|
6297
6291
|
import data2 from "@emoji-mart/data";
|
|
6298
6292
|
import Picker from "@emoji-mart/react";
|
|
6299
6293
|
import { useHMSActions as useHMSActions21 } from "@100mslive/react-sdk";
|
|
@@ -6371,7 +6365,7 @@ var TextArea = styled("textarea", {
|
|
|
6371
6365
|
function EmojiPicker({ onSelect }) {
|
|
6372
6366
|
const [showEmoji, setShowEmoji] = useState23(false);
|
|
6373
6367
|
const ref = useEmojiPickerStyles(showEmoji);
|
|
6374
|
-
return /* @__PURE__ */
|
|
6368
|
+
return /* @__PURE__ */ React50.createElement(Popover2.Root, { open: showEmoji, onOpenChange: setShowEmoji }, /* @__PURE__ */ React50.createElement(Popover2.Trigger, { asChild: true, css: { appearance: "none" } }, /* @__PURE__ */ React50.createElement(IconButton, { as: "div" }, /* @__PURE__ */ React50.createElement(EmojiIcon2, null))), /* @__PURE__ */ React50.createElement(Popover2.Portal, null, /* @__PURE__ */ React50.createElement(
|
|
6375
6369
|
Popover2.Content,
|
|
6376
6370
|
{
|
|
6377
6371
|
alignOffset: -40,
|
|
@@ -6381,7 +6375,7 @@ function EmojiPicker({ onSelect }) {
|
|
|
6381
6375
|
p: 0
|
|
6382
6376
|
}
|
|
6383
6377
|
},
|
|
6384
|
-
/* @__PURE__ */
|
|
6378
|
+
/* @__PURE__ */ React50.createElement(
|
|
6385
6379
|
Box,
|
|
6386
6380
|
{
|
|
6387
6381
|
css: {
|
|
@@ -6390,7 +6384,7 @@ function EmojiPicker({ onSelect }) {
|
|
|
6390
6384
|
},
|
|
6391
6385
|
ref
|
|
6392
6386
|
},
|
|
6393
|
-
/* @__PURE__ */
|
|
6387
|
+
/* @__PURE__ */ React50.createElement(Picker, { onEmojiSelect: onSelect, data: data2, previewPosition: "none", skinPosition: "search" })
|
|
6394
6388
|
)
|
|
6395
6389
|
)));
|
|
6396
6390
|
}
|
|
@@ -6431,7 +6425,7 @@ var ChatFooter = ({ role, peerId, onSend, children }) => {
|
|
|
6431
6425
|
setDraftMessage((messageElement == null ? void 0 : messageElement.value) || "");
|
|
6432
6426
|
};
|
|
6433
6427
|
}, [setDraftMessage]);
|
|
6434
|
-
return /* @__PURE__ */
|
|
6428
|
+
return /* @__PURE__ */ React50.createElement(
|
|
6435
6429
|
Flex,
|
|
6436
6430
|
{
|
|
6437
6431
|
align: "center",
|
|
@@ -6446,7 +6440,7 @@ var ChatFooter = ({ role, peerId, onSend, children }) => {
|
|
|
6446
6440
|
}
|
|
6447
6441
|
},
|
|
6448
6442
|
children,
|
|
6449
|
-
/* @__PURE__ */
|
|
6443
|
+
/* @__PURE__ */ React50.createElement(
|
|
6450
6444
|
TextArea,
|
|
6451
6445
|
{
|
|
6452
6446
|
placeholder: "Write something here",
|
|
@@ -6467,7 +6461,7 @@ var ChatFooter = ({ role, peerId, onSend, children }) => {
|
|
|
6467
6461
|
onCopy: (e) => e.stopPropagation()
|
|
6468
6462
|
}
|
|
6469
6463
|
),
|
|
6470
|
-
/* @__PURE__ */
|
|
6464
|
+
/* @__PURE__ */ React50.createElement(
|
|
6471
6465
|
EmojiPicker,
|
|
6472
6466
|
{
|
|
6473
6467
|
onSelect: (emoji) => {
|
|
@@ -6475,26 +6469,26 @@ var ChatFooter = ({ role, peerId, onSend, children }) => {
|
|
|
6475
6469
|
}
|
|
6476
6470
|
}
|
|
6477
6471
|
),
|
|
6478
|
-
/* @__PURE__ */
|
|
6472
|
+
/* @__PURE__ */ React50.createElement(
|
|
6479
6473
|
IconButton,
|
|
6480
6474
|
{
|
|
6481
6475
|
onClick: sendMessage,
|
|
6482
6476
|
css: { ml: "auto", height: "max-content", mr: "$4" },
|
|
6483
6477
|
"data-testid": "send_msg_btn"
|
|
6484
6478
|
},
|
|
6485
|
-
/* @__PURE__ */
|
|
6479
|
+
/* @__PURE__ */ React50.createElement(SendIcon, null)
|
|
6486
6480
|
)
|
|
6487
6481
|
);
|
|
6488
6482
|
};
|
|
6489
6483
|
|
|
6490
6484
|
// src/Prebuilt/components/Chat/ChatHeader.jsx
|
|
6491
6485
|
init_define_process_env();
|
|
6492
|
-
import
|
|
6486
|
+
import React52, { useState as useState25 } from "react";
|
|
6493
6487
|
import { ChevronDownIcon as ChevronDownIcon5, ChevronUpIcon as ChevronUpIcon5, CrossIcon as CrossIcon6 } from "@100mslive/react-icons";
|
|
6494
6488
|
|
|
6495
6489
|
// src/Prebuilt/components/Chat/ChatSelector.jsx
|
|
6496
6490
|
init_define_process_env();
|
|
6497
|
-
import
|
|
6491
|
+
import React51, { Fragment as Fragment7, useMemo as useMemo5, useState as useState24 } from "react";
|
|
6498
6492
|
import { useMeasure as useMeasure2 } from "react-use";
|
|
6499
6493
|
import { FixedSizeList as FixedSizeList2 } from "react-window";
|
|
6500
6494
|
import {
|
|
@@ -6506,17 +6500,17 @@ import {
|
|
|
6506
6500
|
} from "@100mslive/react-sdk";
|
|
6507
6501
|
import { CheckIcon as CheckIcon4 } from "@100mslive/react-icons";
|
|
6508
6502
|
var ChatDotIcon = () => {
|
|
6509
|
-
return /* @__PURE__ */
|
|
6503
|
+
return /* @__PURE__ */ React51.createElement(Box, { css: { size: "$6", bg: "$primary_default", mx: "$2", r: "$round" } });
|
|
6510
6504
|
};
|
|
6511
6505
|
var SelectorItem = ({ value, active, onClick, unreadCount }) => {
|
|
6512
|
-
return /* @__PURE__ */
|
|
6506
|
+
return /* @__PURE__ */ React51.createElement(Dropdown.Item, { "data-testid": "chat_members", css: { align: "center", px: "$10" }, onClick }, /* @__PURE__ */ React51.createElement(Text, { variant: "sm" }, value), /* @__PURE__ */ React51.createElement(Flex, { align: "center", css: { ml: "auto", color: "$on_primary_high" } }, unreadCount > 0 && /* @__PURE__ */ React51.createElement(Tooltip, { title: `${unreadCount} unread` }, /* @__PURE__ */ React51.createElement(Box, { css: { mr: active ? "$3" : 0 } }, /* @__PURE__ */ React51.createElement(ChatDotIcon, null))), active && /* @__PURE__ */ React51.createElement(CheckIcon4, { width: 16, height: 16 })));
|
|
6513
6507
|
};
|
|
6514
|
-
var SelectorHeader =
|
|
6515
|
-
return /* @__PURE__ */
|
|
6508
|
+
var SelectorHeader = React51.memo(({ children }) => {
|
|
6509
|
+
return /* @__PURE__ */ React51.createElement(Box, { css: { flexShrink: 0 } }, /* @__PURE__ */ React51.createElement(HorizontalDivider, { space: 4 }), /* @__PURE__ */ React51.createElement(Text, { variant: "md", css: { p: "$4 $10", fontWeight: "$semiBold" } }, children));
|
|
6516
6510
|
});
|
|
6517
|
-
var Everyone =
|
|
6511
|
+
var Everyone = React51.memo(({ onSelect, active }) => {
|
|
6518
6512
|
const unreadCount = useHMSStore25(selectUnreadHMSMessagesCount);
|
|
6519
|
-
return /* @__PURE__ */
|
|
6513
|
+
return /* @__PURE__ */ React51.createElement(
|
|
6520
6514
|
SelectorItem,
|
|
6521
6515
|
{
|
|
6522
6516
|
value: "Everyone",
|
|
@@ -6528,9 +6522,9 @@ var Everyone = React52.memo(({ onSelect, active }) => {
|
|
|
6528
6522
|
}
|
|
6529
6523
|
);
|
|
6530
6524
|
});
|
|
6531
|
-
var RoleItem =
|
|
6525
|
+
var RoleItem = React51.memo(({ onSelect, role, active }) => {
|
|
6532
6526
|
const unreadCount = useHMSStore25(selectMessagesUnreadCountByRole(role));
|
|
6533
|
-
return /* @__PURE__ */
|
|
6527
|
+
return /* @__PURE__ */ React51.createElement(
|
|
6534
6528
|
SelectorItem,
|
|
6535
6529
|
{
|
|
6536
6530
|
value: role,
|
|
@@ -6544,7 +6538,7 @@ var RoleItem = React52.memo(({ onSelect, role, active }) => {
|
|
|
6544
6538
|
});
|
|
6545
6539
|
var PeerItem = ({ onSelect, peerId, name, active }) => {
|
|
6546
6540
|
const unreadCount = useHMSStore25(selectMessagesUnreadCountByPeerID(peerId));
|
|
6547
|
-
return /* @__PURE__ */
|
|
6541
|
+
return /* @__PURE__ */ React51.createElement(
|
|
6548
6542
|
SelectorItem,
|
|
6549
6543
|
{
|
|
6550
6544
|
value: name,
|
|
@@ -6567,17 +6561,17 @@ var VirtualizedSelectItemList = ({ peers, selectedRole, selectedPeerId, searchVa
|
|
|
6567
6561
|
[peers, searchValue]
|
|
6568
6562
|
);
|
|
6569
6563
|
const listItems = useMemo5(() => {
|
|
6570
|
-
const selectItems = [/* @__PURE__ */
|
|
6571
|
-
roles.length > 0 && selectItems.push(/* @__PURE__ */
|
|
6564
|
+
const selectItems = [/* @__PURE__ */ React51.createElement(Everyone, { onSelect, active: !selectedRole && !selectedPeerId })];
|
|
6565
|
+
roles.length > 0 && selectItems.push(/* @__PURE__ */ React51.createElement(SelectorHeader, null, "Roles"));
|
|
6572
6566
|
roles.forEach(
|
|
6573
6567
|
(userRole) => selectItems.push(
|
|
6574
|
-
/* @__PURE__ */
|
|
6568
|
+
/* @__PURE__ */ React51.createElement(RoleItem, { key: userRole, active: selectedRole === userRole, role: userRole, onSelect })
|
|
6575
6569
|
)
|
|
6576
6570
|
);
|
|
6577
|
-
filteredPeers.length > 0 && selectItems.push(/* @__PURE__ */
|
|
6571
|
+
filteredPeers.length > 0 && selectItems.push(/* @__PURE__ */ React51.createElement(SelectorHeader, null, "Participants"));
|
|
6578
6572
|
filteredPeers.forEach(
|
|
6579
6573
|
(peer) => selectItems.push(
|
|
6580
|
-
/* @__PURE__ */
|
|
6574
|
+
/* @__PURE__ */ React51.createElement(
|
|
6581
6575
|
PeerItem,
|
|
6582
6576
|
{
|
|
6583
6577
|
key: peer.id,
|
|
@@ -6591,12 +6585,12 @@ var VirtualizedSelectItemList = ({ peers, selectedRole, selectedPeerId, searchVa
|
|
|
6591
6585
|
);
|
|
6592
6586
|
return selectItems;
|
|
6593
6587
|
}, [onSelect, selectedRole, selectedPeerId, roles, filteredPeers]);
|
|
6594
|
-
return /* @__PURE__ */
|
|
6588
|
+
return /* @__PURE__ */ React51.createElement(Dropdown.Group, { ref, css: { height: "$64", overflowY: "auto" } }, /* @__PURE__ */ React51.createElement(FixedSizeList2, { itemSize: 52, itemCount: listItems.length, width, height }, ({ index, style }) => /* @__PURE__ */ React51.createElement("div", { style, key: index }, listItems[index])));
|
|
6595
6589
|
};
|
|
6596
6590
|
var ChatSelector = ({ role, peerId, onSelect }) => {
|
|
6597
6591
|
const peers = useHMSStore25(selectRemotePeers);
|
|
6598
6592
|
const [search, setSearch] = useState24("");
|
|
6599
|
-
return /* @__PURE__ */
|
|
6593
|
+
return /* @__PURE__ */ React51.createElement(Fragment7, null, peers.length > 0 && /* @__PURE__ */ React51.createElement(Box, { css: { px: "$8" } }, /* @__PURE__ */ React51.createElement(ParticipantSearch, { onSearch: setSearch, placeholder: "Search participants" })), /* @__PURE__ */ React51.createElement(
|
|
6600
6594
|
VirtualizedSelectItemList,
|
|
6601
6595
|
{
|
|
6602
6596
|
selectedRole: role,
|
|
@@ -6609,10 +6603,10 @@ var ChatSelector = ({ role, peerId, onSelect }) => {
|
|
|
6609
6603
|
};
|
|
6610
6604
|
|
|
6611
6605
|
// src/Prebuilt/components/Chat/ChatHeader.jsx
|
|
6612
|
-
var ChatHeader =
|
|
6606
|
+
var ChatHeader = React52.memo(({ selection, selectorOpen, onToggle, onSelect, role, peerId }) => {
|
|
6613
6607
|
const [open, setOpen] = useState25(false);
|
|
6614
6608
|
const toggleChat = useSidepaneToggle(SIDE_PANE_OPTIONS.CHAT);
|
|
6615
|
-
return /* @__PURE__ */
|
|
6609
|
+
return /* @__PURE__ */ React52.createElement(
|
|
6616
6610
|
Flex,
|
|
6617
6611
|
{
|
|
6618
6612
|
onClick: onToggle,
|
|
@@ -6623,8 +6617,8 @@ var ChatHeader = React53.memo(({ selection, selectorOpen, onToggle, onSelect, ro
|
|
|
6623
6617
|
mb: "$2"
|
|
6624
6618
|
}
|
|
6625
6619
|
},
|
|
6626
|
-
/* @__PURE__ */
|
|
6627
|
-
/* @__PURE__ */
|
|
6620
|
+
/* @__PURE__ */ React52.createElement(Text, { variant: "h6" }, "Chat "),
|
|
6621
|
+
/* @__PURE__ */ React52.createElement(Dropdown.Root, { open, onOpenChange: (value) => setOpen(value) }, /* @__PURE__ */ React52.createElement(
|
|
6628
6622
|
Dropdown.Trigger,
|
|
6629
6623
|
{
|
|
6630
6624
|
asChild: true,
|
|
@@ -6637,8 +6631,8 @@ var ChatHeader = React53.memo(({ selection, selectorOpen, onToggle, onSelect, ro
|
|
|
6637
6631
|
},
|
|
6638
6632
|
tabIndex: 0
|
|
6639
6633
|
},
|
|
6640
|
-
/* @__PURE__ */
|
|
6641
|
-
), /* @__PURE__ */
|
|
6634
|
+
/* @__PURE__ */ React52.createElement(Flex, { align: "center" }, /* @__PURE__ */ React52.createElement(Text, { variant: "sm", css: __spreadValues({}, textEllipsis(80)) }, selection), /* @__PURE__ */ React52.createElement(Box, { css: { ml: "$2", color: "$on_surface_low" } }, open ? /* @__PURE__ */ React52.createElement(ChevronUpIcon5, { width: 14, height: 14 }) : /* @__PURE__ */ React52.createElement(ChevronDownIcon5, { width: 14, height: 14 })))
|
|
6635
|
+
), /* @__PURE__ */ React52.createElement(
|
|
6642
6636
|
Dropdown.Content,
|
|
6643
6637
|
{
|
|
6644
6638
|
css: {
|
|
@@ -6649,9 +6643,9 @@ var ChatHeader = React53.memo(({ selection, selectorOpen, onToggle, onSelect, ro
|
|
|
6649
6643
|
align: "start",
|
|
6650
6644
|
sideOffset: 8
|
|
6651
6645
|
},
|
|
6652
|
-
/* @__PURE__ */
|
|
6646
|
+
/* @__PURE__ */ React52.createElement(ChatSelector, { onSelect, role, peerId })
|
|
6653
6647
|
)),
|
|
6654
|
-
/* @__PURE__ */
|
|
6648
|
+
/* @__PURE__ */ React52.createElement(
|
|
6655
6649
|
IconButton,
|
|
6656
6650
|
{
|
|
6657
6651
|
css: { ml: "auto" },
|
|
@@ -6661,7 +6655,7 @@ var ChatHeader = React53.memo(({ selection, selectorOpen, onToggle, onSelect, ro
|
|
|
6661
6655
|
},
|
|
6662
6656
|
"data-testid": "close_chat"
|
|
6663
6657
|
},
|
|
6664
|
-
/* @__PURE__ */
|
|
6658
|
+
/* @__PURE__ */ React52.createElement(CrossIcon6, null)
|
|
6665
6659
|
)
|
|
6666
6660
|
);
|
|
6667
6661
|
});
|
|
@@ -6684,15 +6678,15 @@ var useUnreadCount = ({ role, peerId }) => {
|
|
|
6684
6678
|
var PinnedMessage = ({ clearPinnedMessage }) => {
|
|
6685
6679
|
const permissions = useHMSStore27(selectPermissions6);
|
|
6686
6680
|
const pinnedMessage = useHMSStore27(selectSessionStore2(SESSION_STORE_KEY.PINNED_MESSAGE));
|
|
6687
|
-
return pinnedMessage ? /* @__PURE__ */
|
|
6681
|
+
return pinnedMessage ? /* @__PURE__ */ React53.createElement(
|
|
6688
6682
|
Flex,
|
|
6689
6683
|
{
|
|
6690
6684
|
css: { p: "$8", color: "$on_surface_medium", bg: "$surface_bright", r: "$1" },
|
|
6691
6685
|
align: "center",
|
|
6692
6686
|
justify: "between"
|
|
6693
6687
|
},
|
|
6694
|
-
/* @__PURE__ */
|
|
6695
|
-
/* @__PURE__ */
|
|
6688
|
+
/* @__PURE__ */ React53.createElement(Box, null, /* @__PURE__ */ React53.createElement(PinIcon2, null)),
|
|
6689
|
+
/* @__PURE__ */ React53.createElement(
|
|
6696
6690
|
Box,
|
|
6697
6691
|
{
|
|
6698
6692
|
css: {
|
|
@@ -6703,9 +6697,9 @@ var PinnedMessage = ({ clearPinnedMessage }) => {
|
|
|
6703
6697
|
overflowY: "auto"
|
|
6704
6698
|
}
|
|
6705
6699
|
},
|
|
6706
|
-
/* @__PURE__ */
|
|
6700
|
+
/* @__PURE__ */ React53.createElement(Text, { variant: "sm" }, /* @__PURE__ */ React53.createElement(AnnotisedMessage, { message: pinnedMessage }))
|
|
6707
6701
|
),
|
|
6708
|
-
permissions.removeOthers && /* @__PURE__ */
|
|
6702
|
+
permissions.removeOthers && /* @__PURE__ */ React53.createElement(IconButton_default, { onClick: () => clearPinnedMessage() }, /* @__PURE__ */ React53.createElement(CrossIcon7, null))
|
|
6709
6703
|
) : null;
|
|
6710
6704
|
};
|
|
6711
6705
|
var Chat = () => {
|
|
@@ -6748,7 +6742,7 @@ var Chat = () => {
|
|
|
6748
6742
|
},
|
|
6749
6743
|
[hmsActions, messagesCount]
|
|
6750
6744
|
);
|
|
6751
|
-
return /* @__PURE__ */
|
|
6745
|
+
return /* @__PURE__ */ React53.createElement(Flex, { direction: "column", css: { size: "100%" } }, /* @__PURE__ */ React53.createElement(
|
|
6752
6746
|
ChatHeader,
|
|
6753
6747
|
{
|
|
6754
6748
|
selectorOpen: isSelectorOpen,
|
|
@@ -6768,14 +6762,14 @@ var Chat = () => {
|
|
|
6768
6762
|
setSelectorOpen((value) => !value);
|
|
6769
6763
|
}
|
|
6770
6764
|
}
|
|
6771
|
-
), /* @__PURE__ */
|
|
6765
|
+
), /* @__PURE__ */ React53.createElement(PinnedMessage, { clearPinnedMessage: setPinnedMessage }), /* @__PURE__ */ React53.createElement(ChatBody, { role: chatOptions.role, peerId: chatOptions.peerId, ref: listRef, scrollToBottom }), /* @__PURE__ */ React53.createElement(ChatFooter, { role: chatOptions.role, peerId: chatOptions.peerId, onSend: () => scrollToBottom(1) }, !isSelectorOpen && /* @__PURE__ */ React53.createElement(NewMessageIndicator, { role: chatOptions.role, peerId: chatOptions.peerId, scrollToBottom })));
|
|
6772
6766
|
};
|
|
6773
6767
|
var NewMessageIndicator = ({ role, peerId, scrollToBottom }) => {
|
|
6774
6768
|
const unreadCount = useUnreadCount({ role, peerId });
|
|
6775
6769
|
if (!unreadCount) {
|
|
6776
6770
|
return null;
|
|
6777
6771
|
}
|
|
6778
|
-
return /* @__PURE__ */
|
|
6772
|
+
return /* @__PURE__ */ React53.createElement(
|
|
6779
6773
|
Flex,
|
|
6780
6774
|
{
|
|
6781
6775
|
justify: "center",
|
|
@@ -6786,7 +6780,7 @@ var NewMessageIndicator = ({ role, peerId, scrollToBottom }) => {
|
|
|
6786
6780
|
position: "absolute"
|
|
6787
6781
|
}
|
|
6788
6782
|
},
|
|
6789
|
-
/* @__PURE__ */
|
|
6783
|
+
/* @__PURE__ */ React53.createElement(
|
|
6790
6784
|
Button,
|
|
6791
6785
|
{
|
|
6792
6786
|
onClick: () => {
|
|
@@ -6795,14 +6789,14 @@ var NewMessageIndicator = ({ role, peerId, scrollToBottom }) => {
|
|
|
6795
6789
|
css: { p: "$2 $4", "& > svg": { ml: "$4" } }
|
|
6796
6790
|
},
|
|
6797
6791
|
"New Messages",
|
|
6798
|
-
/* @__PURE__ */
|
|
6792
|
+
/* @__PURE__ */ React53.createElement(ChevronDownIcon6, { width: 16, height: 16 })
|
|
6799
6793
|
)
|
|
6800
6794
|
);
|
|
6801
6795
|
};
|
|
6802
6796
|
|
|
6803
6797
|
// src/Prebuilt/components/Streaming/StreamingLanding.jsx
|
|
6804
6798
|
init_define_process_env();
|
|
6805
|
-
import
|
|
6799
|
+
import React55, { Fragment as Fragment9, useState as useState28 } from "react";
|
|
6806
6800
|
import { selectPermissions as selectPermissions7, useHMSStore as useHMSStore29, useRecordingStreaming as useRecordingStreaming7 } from "@100mslive/react-sdk";
|
|
6807
6801
|
import { ColoredHandIcon, CrossIcon as CrossIcon8, GoLiveIcon as GoLiveIcon4 } from "@100mslive/react-icons";
|
|
6808
6802
|
|
|
@@ -6811,7 +6805,7 @@ var rtmp_default = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGQAAABlCAYAAA
|
|
|
6811
6805
|
|
|
6812
6806
|
// src/Prebuilt/components/Streaming/HLSStreaming.jsx
|
|
6813
6807
|
init_define_process_env();
|
|
6814
|
-
import
|
|
6808
|
+
import React54, { Fragment as Fragment8, useCallback as useCallback19, useEffect as useEffect28, useState as useState27 } from "react";
|
|
6815
6809
|
import { selectRoomID as selectRoomID2, useHMSActions as useHMSActions23, useHMSStore as useHMSStore28, useRecordingStreaming as useRecordingStreaming6 } from "@100mslive/react-sdk";
|
|
6816
6810
|
import {
|
|
6817
6811
|
EndStreamIcon as EndStreamIcon2,
|
|
@@ -6831,7 +6825,7 @@ var getCardData = (roleName, roomId) => {
|
|
|
6831
6825
|
data3 = {
|
|
6832
6826
|
title: formattedRoleName,
|
|
6833
6827
|
content: "Broadcasters can livestream audio or video, manage stream appearance and control the room via HLS.",
|
|
6834
|
-
icon: /* @__PURE__ */
|
|
6828
|
+
icon: /* @__PURE__ */ React54.createElement(SupportIcon, null)
|
|
6835
6829
|
};
|
|
6836
6830
|
break;
|
|
6837
6831
|
}
|
|
@@ -6839,7 +6833,7 @@ var getCardData = (roleName, roomId) => {
|
|
|
6839
6833
|
data3 = {
|
|
6840
6834
|
title: "HLS Viewer",
|
|
6841
6835
|
content: "Viewers can view and send chat messages, but need to be made broadcasters to participate with audio or video.",
|
|
6842
|
-
icon: /* @__PURE__ */
|
|
6836
|
+
icon: /* @__PURE__ */ React54.createElement(EyeOpenIcon2, null)
|
|
6843
6837
|
};
|
|
6844
6838
|
break;
|
|
6845
6839
|
}
|
|
@@ -6847,7 +6841,7 @@ var getCardData = (roleName, roomId) => {
|
|
|
6847
6841
|
data3 = {
|
|
6848
6842
|
title: formattedRoleName,
|
|
6849
6843
|
content: `${formattedRoleName} is customised with specific permissions, which will determine how it interacts with this room.`,
|
|
6850
|
-
icon: /* @__PURE__ */
|
|
6844
|
+
icon: /* @__PURE__ */ React54.createElement(WrenchIcon2, null),
|
|
6851
6845
|
order: 1
|
|
6852
6846
|
};
|
|
6853
6847
|
}
|
|
@@ -6856,7 +6850,7 @@ var getCardData = (roleName, roomId) => {
|
|
|
6856
6850
|
};
|
|
6857
6851
|
var Card = ({ title, icon, link, content, isHLSRunning, order = 0 }) => {
|
|
6858
6852
|
const [copied, setCopied] = useState27(false);
|
|
6859
|
-
return isHLSRunning ? /* @__PURE__ */
|
|
6853
|
+
return isHLSRunning ? /* @__PURE__ */ React54.createElement(
|
|
6860
6854
|
Box,
|
|
6861
6855
|
{
|
|
6862
6856
|
key: title,
|
|
@@ -6867,9 +6861,9 @@ var Card = ({ title, icon, link, content, isHLSRunning, order = 0 }) => {
|
|
|
6867
6861
|
borderRadius: "$2"
|
|
6868
6862
|
}
|
|
6869
6863
|
},
|
|
6870
|
-
/* @__PURE__ */
|
|
6871
|
-
/* @__PURE__ */
|
|
6872
|
-
/* @__PURE__ */
|
|
6864
|
+
/* @__PURE__ */ React54.createElement(Flex, { align: "center", gap: "2", css: { color: "$primary_bright" } }, icon, /* @__PURE__ */ React54.createElement(Text, { variant: "h6", css: { fontWeight: "$semiBold" } }, title)),
|
|
6865
|
+
/* @__PURE__ */ React54.createElement(Text, { variant: "sm", css: { color: "$on_surface_medium", mt: "$6" } }, content),
|
|
6866
|
+
/* @__PURE__ */ React54.createElement(
|
|
6873
6867
|
Button,
|
|
6874
6868
|
{
|
|
6875
6869
|
variant: "standard",
|
|
@@ -6881,7 +6875,7 @@ var Card = ({ title, icon, link, content, isHLSRunning, order = 0 }) => {
|
|
|
6881
6875
|
css: { w: "100%", r: "$1", mt: "$10", fontWeight: "$semiBold" },
|
|
6882
6876
|
icon: true
|
|
6883
6877
|
},
|
|
6884
|
-
copied ? /* @__PURE__ */
|
|
6878
|
+
copied ? /* @__PURE__ */ React54.createElement(React54.Fragment, null, "Link copied!") : /* @__PURE__ */ React54.createElement(React54.Fragment, null, /* @__PURE__ */ React54.createElement(LinkIcon, { style: { color: "inherit" } }), "Copy Invite Link")
|
|
6885
6879
|
)
|
|
6886
6880
|
) : null;
|
|
6887
6881
|
};
|
|
@@ -6891,7 +6885,7 @@ var HLSStreaming = ({ onBack }) => {
|
|
|
6891
6885
|
const cards = roleNames.map((roleName) => getCardData(roleName, roomId));
|
|
6892
6886
|
const { isHLSRunning } = useRecordingStreaming6();
|
|
6893
6887
|
const [showLinks, setShowLinks] = useState27(false);
|
|
6894
|
-
return !showLinks ? /* @__PURE__ */
|
|
6888
|
+
return !showLinks ? /* @__PURE__ */ React54.createElement(Container3, { rounded: true }, /* @__PURE__ */ React54.createElement(ContentHeader, { title: "Start Streaming", content: "HLS", onBack }), /* @__PURE__ */ React54.createElement(ContentBody, { title: "HLS Streaming", Icon: GoLiveIcon3, removeVerticalPadding: true }, "Stream directly from the browser using any device with multiple hosts and real-time messaging, all within this platform."), isHLSRunning ? /* @__PURE__ */ React54.createElement(EndHLS, { setShowLinks }) : /* @__PURE__ */ React54.createElement(StartHLS, null)) : /* @__PURE__ */ React54.createElement(Container3, { rounded: true }, /* @__PURE__ */ React54.createElement(ContentHeader, { title: "Invite People", content: "Start the conversation", onBack: () => setShowLinks(false) }), /* @__PURE__ */ React54.createElement(Flex, { direction: "column", css: { gap: "$10", p: "$0 $10", overflowY: "auto", mb: "$10" } }, cards.map((card) => /* @__PURE__ */ React54.createElement(Card, __spreadProps(__spreadValues({ key: card.title }, card), { isHLSRunning })))));
|
|
6895
6889
|
};
|
|
6896
6890
|
var StartHLS = () => {
|
|
6897
6891
|
const [record, setRecord] = useState27(false);
|
|
@@ -6917,7 +6911,7 @@ var StartHLS = () => {
|
|
|
6917
6911
|
}),
|
|
6918
6912
|
[hmsActions, record, isHLSStarted, setHLSStarted]
|
|
6919
6913
|
);
|
|
6920
|
-
return /* @__PURE__ */
|
|
6914
|
+
return /* @__PURE__ */ React54.createElement(Fragment8, null, /* @__PURE__ */ React54.createElement(RecordStream, { record, setRecord, testId: "hls-recording" }), /* @__PURE__ */ React54.createElement(Box, { css: { p: "$4 $10" } }, /* @__PURE__ */ React54.createElement(ErrorText, { error }), /* @__PURE__ */ React54.createElement(
|
|
6921
6915
|
Button,
|
|
6922
6916
|
{
|
|
6923
6917
|
"data-testid": "start_hls",
|
|
@@ -6926,9 +6920,9 @@ var StartHLS = () => {
|
|
|
6926
6920
|
onClick: () => startHLS(),
|
|
6927
6921
|
disabled: isHLSStarted
|
|
6928
6922
|
},
|
|
6929
|
-
isHLSStarted ? /* @__PURE__ */
|
|
6923
|
+
isHLSStarted ? /* @__PURE__ */ React54.createElement(Loading, { size: 24, color: "currentColor" }) : /* @__PURE__ */ React54.createElement(GoLiveIcon3, null),
|
|
6930
6924
|
isHLSStarted ? "Starting stream..." : "Go Live"
|
|
6931
|
-
)), /* @__PURE__ */
|
|
6925
|
+
)), /* @__PURE__ */ React54.createElement(Flex, { align: "center", css: { p: "$4 $10" } }, /* @__PURE__ */ React54.createElement(Text, null, /* @__PURE__ */ React54.createElement(InfoIcon2, { width: 16, height: 16 })), /* @__PURE__ */ React54.createElement(Text, { variant: "tiny", color: "$on_surface_medium", css: { mx: "$8" } }, "You cannot start recording once the stream starts, you will have to stop the stream to enable recording.")));
|
|
6932
6926
|
};
|
|
6933
6927
|
var EndHLS = ({ setShowLinks }) => {
|
|
6934
6928
|
const hmsActions = useHMSActions23();
|
|
@@ -6940,7 +6934,7 @@ var EndHLS = ({ setShowLinks }) => {
|
|
|
6940
6934
|
setInProgress(false);
|
|
6941
6935
|
}
|
|
6942
6936
|
}, [inProgress, isHLSRunning]);
|
|
6943
|
-
return /* @__PURE__ */
|
|
6937
|
+
return /* @__PURE__ */ React54.createElement(Box, { css: { p: "$4 $10" } }, /* @__PURE__ */ React54.createElement(ErrorText, { error }), /* @__PURE__ */ React54.createElement(
|
|
6944
6938
|
Button,
|
|
6945
6939
|
{
|
|
6946
6940
|
"data-testid": "stop_hls",
|
|
@@ -6959,9 +6953,9 @@ var EndHLS = ({ setShowLinks }) => {
|
|
|
6959
6953
|
}
|
|
6960
6954
|
})
|
|
6961
6955
|
},
|
|
6962
|
-
/* @__PURE__ */
|
|
6956
|
+
/* @__PURE__ */ React54.createElement(EndStreamIcon2, null),
|
|
6963
6957
|
"End Stream"
|
|
6964
|
-
), /* @__PURE__ */
|
|
6958
|
+
), /* @__PURE__ */ React54.createElement(Button, { icon: true, css: { w: "100%", r: "$0", mt: "$8" }, onClick: () => setShowLinks(true) }, /* @__PURE__ */ React54.createElement(PeopleIcon3, null), " Invite People"));
|
|
6965
6959
|
};
|
|
6966
6960
|
|
|
6967
6961
|
// src/Prebuilt/components/Streaming/StreamingLanding.jsx
|
|
@@ -6975,7 +6969,7 @@ var StreamingLanding = () => {
|
|
|
6975
6969
|
toggleStreaming();
|
|
6976
6970
|
return null;
|
|
6977
6971
|
}
|
|
6978
|
-
return /* @__PURE__ */
|
|
6972
|
+
return /* @__PURE__ */ React55.createElement(Fragment9, null, /* @__PURE__ */ React55.createElement(Flex, { css: { w: "100%", py: "$8" } }, /* @__PURE__ */ React55.createElement(
|
|
6979
6973
|
Box,
|
|
6980
6974
|
{
|
|
6981
6975
|
css: {
|
|
@@ -6985,8 +6979,8 @@ var StreamingLanding = () => {
|
|
|
6985
6979
|
r: "$round"
|
|
6986
6980
|
}
|
|
6987
6981
|
},
|
|
6988
|
-
/* @__PURE__ */
|
|
6989
|
-
), /* @__PURE__ */
|
|
6982
|
+
/* @__PURE__ */ React55.createElement(ColoredHandIcon, { width: 40, height: 40 })
|
|
6983
|
+
), /* @__PURE__ */ React55.createElement(Box, { css: { flex: "1 1 0", mx: "$8" } }, /* @__PURE__ */ React55.createElement(Text, { variant: "sm" }, "Welcome !"), /* @__PURE__ */ React55.createElement(Text, { variant: "h6" }, "Let\u2019s get you started")), /* @__PURE__ */ React55.createElement(IconButton_default, { onClick: toggleStreaming, css: { alignSelf: "flex-start" }, "data-testid": "close_streaming" }, /* @__PURE__ */ React55.createElement(CrossIcon8, null))), /* @__PURE__ */ React55.createElement(Text, { variant: "tiny", color: "$on_surface_medium" }, "Start Streaming"), (permissions == null ? void 0 : permissions.hlsStreaming) && /* @__PURE__ */ React55.createElement(
|
|
6990
6984
|
StreamCard,
|
|
6991
6985
|
{
|
|
6992
6986
|
testId: "hls_stream",
|
|
@@ -6996,7 +6990,7 @@ var StreamingLanding = () => {
|
|
|
6996
6990
|
onClick: () => setShowHLS(true),
|
|
6997
6991
|
Icon: GoLiveIcon4
|
|
6998
6992
|
}
|
|
6999
|
-
), (permissions == null ? void 0 : permissions.rtmpStreaming) && /* @__PURE__ */
|
|
6993
|
+
), (permissions == null ? void 0 : permissions.rtmpStreaming) && /* @__PURE__ */ React55.createElement(
|
|
7000
6994
|
StreamCard,
|
|
7001
6995
|
{
|
|
7002
6996
|
testId: "rtmp_stream",
|
|
@@ -7008,7 +7002,7 @@ var StreamingLanding = () => {
|
|
|
7008
7002
|
},
|
|
7009
7003
|
imgSrc: rtmp_default
|
|
7010
7004
|
}
|
|
7011
|
-
), showHLS && /* @__PURE__ */
|
|
7005
|
+
), showHLS && /* @__PURE__ */ React55.createElement(HLSStreaming, { onBack: () => setShowHLS(false) }), showRTMP && /* @__PURE__ */ React55.createElement(RTMPStreaming, { onBack: () => setShowRTMP(false) }));
|
|
7012
7006
|
};
|
|
7013
7007
|
|
|
7014
7008
|
// src/Prebuilt/layouts/SidePane.jsx
|
|
@@ -7025,7 +7019,7 @@ var SidePane = ({ css: css2 = {} }) => {
|
|
|
7025
7019
|
if (!ViewComponent) {
|
|
7026
7020
|
return null;
|
|
7027
7021
|
}
|
|
7028
|
-
return /* @__PURE__ */
|
|
7022
|
+
return /* @__PURE__ */ React56.createElement(
|
|
7029
7023
|
Box,
|
|
7030
7024
|
{
|
|
7031
7025
|
css: __spreadProps(__spreadValues({
|
|
@@ -7049,14 +7043,14 @@ var SidePane = ({ css: css2 = {} }) => {
|
|
|
7049
7043
|
}, css2["@lg"] || {})
|
|
7050
7044
|
})
|
|
7051
7045
|
},
|
|
7052
|
-
/* @__PURE__ */
|
|
7046
|
+
/* @__PURE__ */ React56.createElement(ViewComponent, null)
|
|
7053
7047
|
);
|
|
7054
7048
|
};
|
|
7055
7049
|
var SidePane_default = SidePane;
|
|
7056
7050
|
|
|
7057
7051
|
// src/Prebuilt/components/Preview/PreviewJoin.jsx
|
|
7058
7052
|
init_define_process_env();
|
|
7059
|
-
import
|
|
7053
|
+
import React68, { Fragment as Fragment12, Suspense, useCallback as useCallback22, useEffect as useEffect31, useState as useState31 } from "react";
|
|
7060
7054
|
import {
|
|
7061
7055
|
HMSRoomState as HMSRoomState3,
|
|
7062
7056
|
selectIsLocalVideoEnabled as selectIsLocalVideoEnabled4,
|
|
@@ -7087,6 +7081,7 @@ import { CameraFlipIcon, MicOffIcon, MicOnIcon as MicOnIcon3, VideoOffIcon, Vide
|
|
|
7087
7081
|
|
|
7088
7082
|
// src/Prebuilt/components/IconButtonWithOptions/IconButtonWithOptions.jsx
|
|
7089
7083
|
init_define_process_env();
|
|
7084
|
+
import React57 from "react";
|
|
7090
7085
|
import { VerticalMenuIcon as VerticalMenuIcon3 } from "@100mslive/react-icons";
|
|
7091
7086
|
var IconSection = styled(IconButton_default, {
|
|
7092
7087
|
w: "unset",
|
|
@@ -7130,7 +7125,7 @@ var IconButtonWithOptions = ({
|
|
|
7130
7125
|
}) => {
|
|
7131
7126
|
const bgCss = { backgroundColor: active ? "$transparent" : "$secondary_dim" };
|
|
7132
7127
|
const iconCss = { color: active ? "$on_surface_high" : "$on_primary_high" };
|
|
7133
|
-
return /* @__PURE__ */
|
|
7128
|
+
return /* @__PURE__ */ React57.createElement(Flex, null, /* @__PURE__ */ React57.createElement(IconSection, { css: bgCss, onClick, key }, /* @__PURE__ */ React57.createElement(Tooltip, { disabled: !tooltipMessage, title: tooltipMessage }, /* @__PURE__ */ React57.createElement(Flex, { align: "center", justify: "center", css: iconCss }, icon))), /* @__PURE__ */ React57.createElement(Dropdown.Root, null, /* @__PURE__ */ React57.createElement(Dropdown.Trigger, { asChild: true }, /* @__PURE__ */ React57.createElement(OptionsSection, { css: bgCss }, /* @__PURE__ */ React57.createElement(Tooltip, { title: "View Options" }, /* @__PURE__ */ React57.createElement(Box, { css: iconCss }, /* @__PURE__ */ React57.createElement(VerticalMenuIcon3, null))))), /* @__PURE__ */ React57.createElement(
|
|
7134
7129
|
Dropdown.Content,
|
|
7135
7130
|
{
|
|
7136
7131
|
sideOffset: 5,
|
|
@@ -7142,7 +7137,7 @@ var IconButtonWithOptions = ({
|
|
|
7142
7137
|
border: "none"
|
|
7143
7138
|
}
|
|
7144
7139
|
},
|
|
7145
|
-
options.map((option, index) => /* @__PURE__ */
|
|
7140
|
+
options.map((option, index) => /* @__PURE__ */ React57.createElement(
|
|
7146
7141
|
Dropdown.Item,
|
|
7147
7142
|
{
|
|
7148
7143
|
key: option.title,
|
|
@@ -7243,8 +7238,9 @@ var AudioVideoToggle = () => {
|
|
|
7243
7238
|
|
|
7244
7239
|
// src/Prebuilt/components/Chip.jsx
|
|
7245
7240
|
init_define_process_env();
|
|
7241
|
+
import React59 from "react";
|
|
7246
7242
|
var Chip = ({
|
|
7247
|
-
icon = /* @__PURE__ */
|
|
7243
|
+
icon = /* @__PURE__ */ React59.createElement(React59.Fragment, null),
|
|
7248
7244
|
content = "",
|
|
7249
7245
|
backgroundColor = "$surface_default",
|
|
7250
7246
|
textColor = "$on_surface_high",
|
|
@@ -7253,15 +7249,15 @@ var Chip = ({
|
|
|
7253
7249
|
if (hideIfNoContent && !content) {
|
|
7254
7250
|
return;
|
|
7255
7251
|
}
|
|
7256
|
-
return /* @__PURE__ */
|
|
7252
|
+
return /* @__PURE__ */ React59.createElement(Flex, { align: "center", css: { backgroundColor, p: "$4 $6", borderRadius: "$4" } }, icon, /* @__PURE__ */ React59.createElement(Text, { variant: "sm", css: { fontWeight: "$semiBold", color: textColor, ml: "$2" } }, content));
|
|
7257
7253
|
};
|
|
7258
7254
|
var Chip_default = Chip;
|
|
7259
7255
|
|
|
7260
7256
|
// src/Prebuilt/components/Connection/TileConnection.jsx
|
|
7261
7257
|
init_define_process_env();
|
|
7262
|
-
import
|
|
7258
|
+
import React60 from "react";
|
|
7263
7259
|
var TileConnection = ({ name, peerId, hideLabel, width }) => {
|
|
7264
|
-
return /* @__PURE__ */
|
|
7260
|
+
return /* @__PURE__ */ React60.createElement(Wrapper2, null, !hideLabel ? /* @__PURE__ */ React60.createElement(
|
|
7265
7261
|
Text,
|
|
7266
7262
|
{
|
|
7267
7263
|
css: __spreadValues({
|
|
@@ -7270,7 +7266,7 @@ var TileConnection = ({ name, peerId, hideLabel, width }) => {
|
|
|
7270
7266
|
variant: "xs"
|
|
7271
7267
|
},
|
|
7272
7268
|
name
|
|
7273
|
-
) : null, /* @__PURE__ */
|
|
7269
|
+
) : null, /* @__PURE__ */ React60.createElement(ConnectionIndicator, { isTile: true, peerId }));
|
|
7274
7270
|
};
|
|
7275
7271
|
var Wrapper2 = styled("div", {
|
|
7276
7272
|
display: "flex",
|
|
@@ -7291,7 +7287,7 @@ var TileConnection_default = TileConnection;
|
|
|
7291
7287
|
|
|
7292
7288
|
// src/Prebuilt/components/Settings/SettingsModal.jsx
|
|
7293
7289
|
init_define_process_env();
|
|
7294
|
-
import
|
|
7290
|
+
import React66, { useCallback as useCallback21, useEffect as useEffect30, useState as useState30 } from "react";
|
|
7295
7291
|
import { useMedia as useMedia5 } from "react-use";
|
|
7296
7292
|
import { selectLocalPeerRoleName as selectLocalPeerRoleName5, useHMSStore as useHMSStore34 } from "@100mslive/react-sdk";
|
|
7297
7293
|
import { ChevronLeftIcon as ChevronLeftIcon2, CrossIcon as CrossIcon9 } from "@100mslive/react-icons";
|
|
@@ -7302,7 +7298,7 @@ import { GridFourIcon, NotificationsIcon, SettingsIcon as SettingsIcon2 } from "
|
|
|
7302
7298
|
|
|
7303
7299
|
// src/Prebuilt/components/Settings/DeviceSettings.jsx
|
|
7304
7300
|
init_define_process_env();
|
|
7305
|
-
import
|
|
7301
|
+
import React62, { Fragment as Fragment11, useEffect as useEffect29, useRef as useRef12, useState as useState29 } from "react";
|
|
7306
7302
|
import {
|
|
7307
7303
|
DeviceType as DeviceType2,
|
|
7308
7304
|
selectIsLocalVideoEnabled as selectIsLocalVideoEnabled2,
|
|
@@ -7315,10 +7311,10 @@ import { MicOnIcon as MicOnIcon4, SpeakerIcon as SpeakerIcon2, VideoOnIcon as Vi
|
|
|
7315
7311
|
|
|
7316
7312
|
// src/Prebuilt/primitives/DropdownTrigger.jsx
|
|
7317
7313
|
init_define_process_env();
|
|
7318
|
-
import
|
|
7314
|
+
import React61 from "react";
|
|
7319
7315
|
import { ChevronDownIcon as ChevronDownIcon7, ChevronUpIcon as ChevronUpIcon6 } from "@100mslive/react-icons";
|
|
7320
|
-
var DialogDropdownTrigger =
|
|
7321
|
-
return /* @__PURE__ */
|
|
7316
|
+
var DialogDropdownTrigger = React61.forwardRef(({ title, css: css2, open, icon, titleCSS = {} }, ref) => {
|
|
7317
|
+
return /* @__PURE__ */ React61.createElement(
|
|
7322
7318
|
Dropdown.Trigger,
|
|
7323
7319
|
{
|
|
7324
7320
|
asChild: true,
|
|
@@ -7332,7 +7328,7 @@ var DialogDropdownTrigger = React60.forwardRef(({ title, css: css2, open, icon,
|
|
|
7332
7328
|
}, css2),
|
|
7333
7329
|
ref
|
|
7334
7330
|
},
|
|
7335
|
-
/* @__PURE__ */
|
|
7331
|
+
/* @__PURE__ */ React61.createElement(
|
|
7336
7332
|
Flex,
|
|
7337
7333
|
{
|
|
7338
7334
|
css: {
|
|
@@ -7343,7 +7339,7 @@ var DialogDropdownTrigger = React60.forwardRef(({ title, css: css2, open, icon,
|
|
|
7343
7339
|
}
|
|
7344
7340
|
},
|
|
7345
7341
|
icon,
|
|
7346
|
-
/* @__PURE__ */
|
|
7342
|
+
/* @__PURE__ */ React61.createElement(
|
|
7347
7343
|
Text,
|
|
7348
7344
|
{
|
|
7349
7345
|
css: __spreadValues(__spreadProps(__spreadValues({
|
|
@@ -7355,7 +7351,7 @@ var DialogDropdownTrigger = React60.forwardRef(({ title, css: css2, open, icon,
|
|
|
7355
7351
|
},
|
|
7356
7352
|
title
|
|
7357
7353
|
),
|
|
7358
|
-
open ? /* @__PURE__ */
|
|
7354
|
+
open ? /* @__PURE__ */ React61.createElement(ChevronUpIcon6, null) : /* @__PURE__ */ React61.createElement(ChevronDownIcon7, null)
|
|
7359
7355
|
)
|
|
7360
7356
|
);
|
|
7361
7357
|
});
|
|
@@ -7375,7 +7371,7 @@ var Settings = ({ setHide }) => {
|
|
|
7375
7371
|
if (!(videoInput == null ? void 0 : videoInput.length) && !(audioInput == null ? void 0 : audioInput.length) && !(audioOutputFiltered == null ? void 0 : audioOutputFiltered.length)) {
|
|
7376
7372
|
setHide(true);
|
|
7377
7373
|
}
|
|
7378
|
-
return /* @__PURE__ */
|
|
7374
|
+
return /* @__PURE__ */ React62.createElement(Box, { className: settingOverflow() }, (videoInput == null ? void 0 : videoInput.length) ? /* @__PURE__ */ React62.createElement(Fragment11, null, isVideoOn && /* @__PURE__ */ React62.createElement(
|
|
7379
7375
|
StyledVideoTile.Container,
|
|
7380
7376
|
{
|
|
7381
7377
|
css: {
|
|
@@ -7386,24 +7382,24 @@ var Settings = ({ setHide }) => {
|
|
|
7386
7382
|
m: "$10 auto"
|
|
7387
7383
|
}
|
|
7388
7384
|
},
|
|
7389
|
-
/* @__PURE__ */
|
|
7390
|
-
), /* @__PURE__ */
|
|
7385
|
+
/* @__PURE__ */ React62.createElement(Video, { trackId: videoTrackId, mirror: (track == null ? void 0 : track.facingMode) !== "environment" && mirrorLocalVideo })
|
|
7386
|
+
), /* @__PURE__ */ React62.createElement(
|
|
7391
7387
|
DeviceSelector,
|
|
7392
7388
|
{
|
|
7393
7389
|
title: "Video",
|
|
7394
7390
|
devices: videoInput,
|
|
7395
|
-
icon: /* @__PURE__ */
|
|
7391
|
+
icon: /* @__PURE__ */ React62.createElement(VideoOnIcon2, null),
|
|
7396
7392
|
selection: selectedDeviceIDs.videoInput,
|
|
7397
7393
|
onChange: (deviceId) => updateDevice({
|
|
7398
7394
|
deviceId,
|
|
7399
7395
|
deviceType: DeviceType2.videoInput
|
|
7400
7396
|
})
|
|
7401
7397
|
}
|
|
7402
|
-
)) : null, (audioInput == null ? void 0 : audioInput.length) ? /* @__PURE__ */
|
|
7398
|
+
)) : null, (audioInput == null ? void 0 : audioInput.length) ? /* @__PURE__ */ React62.createElement(
|
|
7403
7399
|
DeviceSelector,
|
|
7404
7400
|
{
|
|
7405
7401
|
title: shouldShowAudioOutput ? "Microphone" : "Audio",
|
|
7406
|
-
icon: /* @__PURE__ */
|
|
7402
|
+
icon: /* @__PURE__ */ React62.createElement(MicOnIcon4, null),
|
|
7407
7403
|
devices: audioInput,
|
|
7408
7404
|
selection: selectedDeviceIDs.audioInput,
|
|
7409
7405
|
onChange: (deviceId) => updateDevice({
|
|
@@ -7411,11 +7407,11 @@ var Settings = ({ setHide }) => {
|
|
|
7411
7407
|
deviceType: DeviceType2.audioInput
|
|
7412
7408
|
})
|
|
7413
7409
|
}
|
|
7414
|
-
) : null, (audioOutputFiltered == null ? void 0 : audioOutputFiltered.length) && shouldShowAudioOutput ? /* @__PURE__ */
|
|
7410
|
+
) : null, (audioOutputFiltered == null ? void 0 : audioOutputFiltered.length) && shouldShowAudioOutput ? /* @__PURE__ */ React62.createElement(
|
|
7415
7411
|
DeviceSelector,
|
|
7416
7412
|
{
|
|
7417
7413
|
title: "Speaker",
|
|
7418
|
-
icon: /* @__PURE__ */
|
|
7414
|
+
icon: /* @__PURE__ */ React62.createElement(SpeakerIcon2, null),
|
|
7419
7415
|
devices: audioOutput,
|
|
7420
7416
|
selection: selectedDeviceIDs.audioOutput,
|
|
7421
7417
|
onChange: (deviceId) => updateDevice({
|
|
@@ -7423,7 +7419,7 @@ var Settings = ({ setHide }) => {
|
|
|
7423
7419
|
deviceType: DeviceType2.audioOutput
|
|
7424
7420
|
})
|
|
7425
7421
|
},
|
|
7426
|
-
/* @__PURE__ */
|
|
7422
|
+
/* @__PURE__ */ React62.createElement(TestAudio, { id: selectedDeviceIDs.audioOutput })
|
|
7427
7423
|
) : null);
|
|
7428
7424
|
};
|
|
7429
7425
|
var DeviceSelector = ({ title, devices, selection, onChange, icon, children = null }) => {
|
|
@@ -7431,7 +7427,7 @@ var DeviceSelector = ({ title, devices, selection, onChange, icon, children = nu
|
|
|
7431
7427
|
const [open, setOpen] = useState29(false);
|
|
7432
7428
|
const selectionBg = useDropdownSelection();
|
|
7433
7429
|
const ref = useRef12(null);
|
|
7434
|
-
return /* @__PURE__ */
|
|
7430
|
+
return /* @__PURE__ */ React62.createElement(Box, { css: { mb: "$10" } }, /* @__PURE__ */ React62.createElement(Text, { css: { mb: "$4" } }, title), /* @__PURE__ */ React62.createElement(
|
|
7435
7431
|
Flex,
|
|
7436
7432
|
{
|
|
7437
7433
|
align: "center",
|
|
@@ -7443,7 +7439,7 @@ var DeviceSelector = ({ title, devices, selection, onChange, icon, children = nu
|
|
|
7443
7439
|
}
|
|
7444
7440
|
}
|
|
7445
7441
|
},
|
|
7446
|
-
/* @__PURE__ */
|
|
7442
|
+
/* @__PURE__ */ React62.createElement(
|
|
7447
7443
|
Box,
|
|
7448
7444
|
{
|
|
7449
7445
|
css: {
|
|
@@ -7456,7 +7452,7 @@ var DeviceSelector = ({ title, devices, selection, onChange, icon, children = nu
|
|
|
7456
7452
|
}
|
|
7457
7453
|
}
|
|
7458
7454
|
},
|
|
7459
|
-
/* @__PURE__ */
|
|
7455
|
+
/* @__PURE__ */ React62.createElement(Dropdown.Root, { open, onOpenChange: setOpen }, /* @__PURE__ */ React62.createElement(
|
|
7460
7456
|
DialogDropdownTrigger,
|
|
7461
7457
|
{
|
|
7462
7458
|
ref,
|
|
@@ -7464,8 +7460,8 @@ var DeviceSelector = ({ title, devices, selection, onChange, icon, children = nu
|
|
|
7464
7460
|
title: ((_a = devices.find(({ deviceId }) => deviceId === selection)) == null ? void 0 : _a.label) || "Select device from list",
|
|
7465
7461
|
open
|
|
7466
7462
|
}
|
|
7467
|
-
), /* @__PURE__ */
|
|
7468
|
-
return /* @__PURE__ */
|
|
7463
|
+
), /* @__PURE__ */ React62.createElement(Dropdown.Portal, null, /* @__PURE__ */ React62.createElement(Dropdown.Content, { align: "start", sideOffset: 8, css: { w: (_b = ref.current) == null ? void 0 : _b.clientWidth, zIndex: 1e3 } }, devices.map((device) => {
|
|
7464
|
+
return /* @__PURE__ */ React62.createElement(
|
|
7469
7465
|
Dropdown.Item,
|
|
7470
7466
|
{
|
|
7471
7467
|
key: device.label,
|
|
@@ -7497,7 +7493,7 @@ var TestAudio = ({ id }) => {
|
|
|
7497
7493
|
}
|
|
7498
7494
|
}
|
|
7499
7495
|
}, [id]);
|
|
7500
|
-
return /* @__PURE__ */
|
|
7496
|
+
return /* @__PURE__ */ React62.createElement(React62.Fragment, null, /* @__PURE__ */ React62.createElement(
|
|
7501
7497
|
Button,
|
|
7502
7498
|
{
|
|
7503
7499
|
variant: "standard",
|
|
@@ -7514,24 +7510,24 @@ var TestAudio = ({ id }) => {
|
|
|
7514
7510
|
},
|
|
7515
7511
|
disabled: playing
|
|
7516
7512
|
},
|
|
7517
|
-
/* @__PURE__ */
|
|
7513
|
+
/* @__PURE__ */ React62.createElement(SpeakerIcon2, null),
|
|
7518
7514
|
"\xA0Test",
|
|
7519
7515
|
" ",
|
|
7520
|
-
/* @__PURE__ */
|
|
7521
|
-
), /* @__PURE__ */
|
|
7516
|
+
/* @__PURE__ */ React62.createElement(Text, { as: "span", css: { display: "none", "@md": { display: "inline" } } }, "\xA0 speaker")
|
|
7517
|
+
), /* @__PURE__ */ React62.createElement("audio", { ref: audioRef, src: TEST_AUDIO_URL, onEnded: () => setPlaying(false), onPlay: () => setPlaying(true) }));
|
|
7522
7518
|
};
|
|
7523
7519
|
var DeviceSettings_default = Settings;
|
|
7524
7520
|
|
|
7525
7521
|
// src/Prebuilt/components/Settings/LayoutSettings.jsx
|
|
7526
7522
|
init_define_process_env();
|
|
7527
|
-
import
|
|
7523
|
+
import React64, { useCallback as useCallback20 } from "react";
|
|
7528
7524
|
import { selectIsLocalScreenShared, selectIsLocalVideoEnabled as selectIsLocalVideoEnabled3, useHMSActions as useHMSActions25, useHMSStore as useHMSStore33 } from "@100mslive/react-sdk";
|
|
7529
7525
|
|
|
7530
7526
|
// src/Prebuilt/components/Settings/SwitchWithLabel.jsx
|
|
7531
7527
|
init_define_process_env();
|
|
7532
|
-
import
|
|
7528
|
+
import React63 from "react";
|
|
7533
7529
|
var SwitchWithLabel = ({ label, icon, id, onChange, checked, hide = false }) => {
|
|
7534
|
-
return /* @__PURE__ */
|
|
7530
|
+
return /* @__PURE__ */ React63.createElement(
|
|
7535
7531
|
Flex,
|
|
7536
7532
|
{
|
|
7537
7533
|
align: "center",
|
|
@@ -7543,7 +7539,7 @@ var SwitchWithLabel = ({ label, icon, id, onChange, checked, hide = false }) =>
|
|
|
7543
7539
|
display: hide ? "none" : "flex"
|
|
7544
7540
|
}
|
|
7545
7541
|
},
|
|
7546
|
-
/* @__PURE__ */
|
|
7542
|
+
/* @__PURE__ */ React63.createElement(
|
|
7547
7543
|
Label3,
|
|
7548
7544
|
{
|
|
7549
7545
|
htmlFor: id,
|
|
@@ -7561,7 +7557,7 @@ var SwitchWithLabel = ({ label, icon, id, onChange, checked, hide = false }) =>
|
|
|
7561
7557
|
icon,
|
|
7562
7558
|
label
|
|
7563
7559
|
),
|
|
7564
|
-
/* @__PURE__ */
|
|
7560
|
+
/* @__PURE__ */ React63.createElement(Switch, { id, checked, onCheckedChange: onChange })
|
|
7565
7561
|
);
|
|
7566
7562
|
};
|
|
7567
7563
|
var SwitchWithLabel_default = SwitchWithLabel;
|
|
@@ -7585,7 +7581,7 @@ var LayoutSettings = () => {
|
|
|
7585
7581
|
}),
|
|
7586
7582
|
[hmsActions, isLocalVideoEnabled, isLocalScreenShared, setUISettings]
|
|
7587
7583
|
);
|
|
7588
|
-
return /* @__PURE__ */
|
|
7584
|
+
return /* @__PURE__ */ React64.createElement(Box, { className: settingOverflow() }, /* @__PURE__ */ React64.createElement(
|
|
7589
7585
|
SwitchWithLabel_default,
|
|
7590
7586
|
{
|
|
7591
7587
|
checked: uiViewMode === UI_MODE_ACTIVE_SPEAKER,
|
|
@@ -7597,7 +7593,7 @@ var LayoutSettings = () => {
|
|
|
7597
7593
|
id: "activeSpeakerMode",
|
|
7598
7594
|
label: "Active Speaker Mode"
|
|
7599
7595
|
}
|
|
7600
|
-
), /* @__PURE__ */
|
|
7596
|
+
), /* @__PURE__ */ React64.createElement(
|
|
7601
7597
|
SwitchWithLabel_default,
|
|
7602
7598
|
{
|
|
7603
7599
|
label: "Active Speaker Sorting",
|
|
@@ -7609,7 +7605,7 @@ var LayoutSettings = () => {
|
|
|
7609
7605
|
});
|
|
7610
7606
|
}
|
|
7611
7607
|
}
|
|
7612
|
-
), /* @__PURE__ */
|
|
7608
|
+
), /* @__PURE__ */ React64.createElement(SwitchWithLabel_default, { label: "Audio Only Mode", id: "audioOnlyMode", checked: isAudioOnly, onChange: toggleIsAudioOnly }), /* @__PURE__ */ React64.createElement(
|
|
7613
7609
|
SwitchWithLabel_default,
|
|
7614
7610
|
{
|
|
7615
7611
|
label: "Mirror Local Video",
|
|
@@ -7621,7 +7617,7 @@ var LayoutSettings = () => {
|
|
|
7621
7617
|
});
|
|
7622
7618
|
}
|
|
7623
7619
|
}
|
|
7624
|
-
), /* @__PURE__ */
|
|
7620
|
+
), /* @__PURE__ */ React64.createElement(
|
|
7625
7621
|
SwitchWithLabel_default,
|
|
7626
7622
|
{
|
|
7627
7623
|
label: "Hide Local Video",
|
|
@@ -7633,7 +7629,7 @@ var LayoutSettings = () => {
|
|
|
7633
7629
|
});
|
|
7634
7630
|
}
|
|
7635
7631
|
}
|
|
7636
|
-
), /* @__PURE__ */
|
|
7632
|
+
), /* @__PURE__ */ React64.createElement(Flex, { align: "center", css: { w: "100%", my: "$2", py: "$8", "@md": { display: "none" } } }, /* @__PURE__ */ React64.createElement(Text, { variant: "md", css: { fontWeight: "$semiBold" } }, "Tiles In View(", maxTileCount, ")"), /* @__PURE__ */ React64.createElement(Flex, { justify: "end", css: { flex: "1 1 0" } }, /* @__PURE__ */ React64.createElement(
|
|
7637
7633
|
Slider,
|
|
7638
7634
|
{
|
|
7639
7635
|
step: 1,
|
|
@@ -7650,11 +7646,11 @@ var LayoutSettings = () => {
|
|
|
7650
7646
|
|
|
7651
7647
|
// src/Prebuilt/components/Settings/NotificationSettings.jsx
|
|
7652
7648
|
init_define_process_env();
|
|
7653
|
-
import
|
|
7649
|
+
import React65 from "react";
|
|
7654
7650
|
import { AlertOctagonIcon, ChatIcon as ChatIcon2, ExitIcon as ExitIcon3, HandIcon as HandIcon3, PersonIcon as PersonIcon3 } from "@100mslive/react-icons";
|
|
7655
7651
|
var NotificationItem = ({ type, label, icon, checked }) => {
|
|
7656
7652
|
const [, setSubscribedNotifications] = useSetSubscribedNotifications(type);
|
|
7657
|
-
return /* @__PURE__ */
|
|
7653
|
+
return /* @__PURE__ */ React65.createElement(
|
|
7658
7654
|
SwitchWithLabel_default,
|
|
7659
7655
|
{
|
|
7660
7656
|
label,
|
|
@@ -7669,44 +7665,44 @@ var NotificationItem = ({ type, label, icon, checked }) => {
|
|
|
7669
7665
|
};
|
|
7670
7666
|
var NotificationSettings = () => {
|
|
7671
7667
|
const subscribedNotifications = useSubscribedNotifications();
|
|
7672
|
-
return /* @__PURE__ */
|
|
7668
|
+
return /* @__PURE__ */ React65.createElement(Box, { className: settingOverflow() }, /* @__PURE__ */ React65.createElement(
|
|
7673
7669
|
NotificationItem,
|
|
7674
7670
|
{
|
|
7675
7671
|
label: "Peer Joined",
|
|
7676
7672
|
type: SUBSCRIBED_NOTIFICATIONS.PEER_JOINED,
|
|
7677
|
-
icon: /* @__PURE__ */
|
|
7673
|
+
icon: /* @__PURE__ */ React65.createElement(PersonIcon3, null),
|
|
7678
7674
|
checked: subscribedNotifications.PEER_JOINED
|
|
7679
7675
|
}
|
|
7680
|
-
), /* @__PURE__ */
|
|
7676
|
+
), /* @__PURE__ */ React65.createElement(
|
|
7681
7677
|
NotificationItem,
|
|
7682
7678
|
{
|
|
7683
7679
|
label: "Peer Leave",
|
|
7684
7680
|
type: SUBSCRIBED_NOTIFICATIONS.PEER_LEFT,
|
|
7685
|
-
icon: /* @__PURE__ */
|
|
7681
|
+
icon: /* @__PURE__ */ React65.createElement(ExitIcon3, null),
|
|
7686
7682
|
checked: subscribedNotifications.PEER_LEFT
|
|
7687
7683
|
}
|
|
7688
|
-
), /* @__PURE__ */
|
|
7684
|
+
), /* @__PURE__ */ React65.createElement(
|
|
7689
7685
|
NotificationItem,
|
|
7690
7686
|
{
|
|
7691
7687
|
label: "New Message",
|
|
7692
7688
|
type: SUBSCRIBED_NOTIFICATIONS.NEW_MESSAGE,
|
|
7693
|
-
icon: /* @__PURE__ */
|
|
7689
|
+
icon: /* @__PURE__ */ React65.createElement(ChatIcon2, null),
|
|
7694
7690
|
checked: subscribedNotifications.NEW_MESSAGE
|
|
7695
7691
|
}
|
|
7696
|
-
), /* @__PURE__ */
|
|
7692
|
+
), /* @__PURE__ */ React65.createElement(
|
|
7697
7693
|
NotificationItem,
|
|
7698
7694
|
{
|
|
7699
7695
|
label: "Hand Raised",
|
|
7700
7696
|
type: SUBSCRIBED_NOTIFICATIONS.METADATA_UPDATED,
|
|
7701
|
-
icon: /* @__PURE__ */
|
|
7697
|
+
icon: /* @__PURE__ */ React65.createElement(HandIcon3, null),
|
|
7702
7698
|
checked: subscribedNotifications.METADATA_UPDATED
|
|
7703
7699
|
}
|
|
7704
|
-
), /* @__PURE__ */
|
|
7700
|
+
), /* @__PURE__ */ React65.createElement(
|
|
7705
7701
|
NotificationItem,
|
|
7706
7702
|
{
|
|
7707
7703
|
label: "Error",
|
|
7708
7704
|
type: SUBSCRIBED_NOTIFICATIONS.ERROR,
|
|
7709
|
-
icon: /* @__PURE__ */
|
|
7705
|
+
icon: /* @__PURE__ */ React65.createElement(AlertOctagonIcon, null),
|
|
7710
7706
|
checked: subscribedNotifications.ERROR
|
|
7711
7707
|
}
|
|
7712
7708
|
));
|
|
@@ -7782,7 +7778,7 @@ var SettingsModal = ({ open, onOpenChange, children }) => {
|
|
|
7782
7778
|
setSelection(firstNotHiddenTabName);
|
|
7783
7779
|
}
|
|
7784
7780
|
}, [isMobile, showSetting]);
|
|
7785
|
-
return /* @__PURE__ */
|
|
7781
|
+
return /* @__PURE__ */ React66.createElement(Dialog.Root, { open, onOpenChange }, /* @__PURE__ */ React66.createElement(Dialog.Trigger, { asChild: true }, children), /* @__PURE__ */ React66.createElement(Dialog.Portal, null, /* @__PURE__ */ React66.createElement(Dialog.Overlay, null), /* @__PURE__ */ React66.createElement(
|
|
7786
7782
|
Dialog.Content,
|
|
7787
7783
|
{
|
|
7788
7784
|
css: {
|
|
@@ -7792,7 +7788,7 @@ var SettingsModal = ({ open, onOpenChange, children }) => {
|
|
|
7792
7788
|
r: "$4"
|
|
7793
7789
|
}
|
|
7794
7790
|
},
|
|
7795
|
-
/* @__PURE__ */
|
|
7791
|
+
/* @__PURE__ */ React66.createElement(
|
|
7796
7792
|
Tabs.Root,
|
|
7797
7793
|
{
|
|
7798
7794
|
value: selection,
|
|
@@ -7800,7 +7796,7 @@ var SettingsModal = ({ open, onOpenChange, children }) => {
|
|
|
7800
7796
|
onValueChange: setSelection,
|
|
7801
7797
|
css: { size: "100%", position: "relative" }
|
|
7802
7798
|
},
|
|
7803
|
-
/* @__PURE__ */
|
|
7799
|
+
/* @__PURE__ */ React66.createElement(
|
|
7804
7800
|
Tabs.List,
|
|
7805
7801
|
{
|
|
7806
7802
|
css: {
|
|
@@ -7812,12 +7808,12 @@ var SettingsModal = ({ open, onOpenChange, children }) => {
|
|
|
7812
7808
|
borderBottomLeftRadius: "$4"
|
|
7813
7809
|
}
|
|
7814
7810
|
},
|
|
7815
|
-
/* @__PURE__ */
|
|
7816
|
-
/* @__PURE__ */
|
|
7817
|
-
return /* @__PURE__ */
|
|
7811
|
+
/* @__PURE__ */ React66.createElement(Text, { variant: "h5" }, "Settings "),
|
|
7812
|
+
/* @__PURE__ */ React66.createElement(Flex, { direction: "column", css: { mx: isMobile ? "-$8" : 0, overflowY: "auto", pt: "$10" } }, settingsList.filter(({ tabName }) => showSetting[tabName]).map(({ icon: Icon2, tabName, title }) => {
|
|
7813
|
+
return /* @__PURE__ */ React66.createElement(Tabs.Trigger, { key: tabName, value: tabName, css: { gap: "$8" } }, /* @__PURE__ */ React66.createElement(Icon2, null), title);
|
|
7818
7814
|
}))
|
|
7819
7815
|
),
|
|
7820
|
-
selection && /* @__PURE__ */
|
|
7816
|
+
selection && /* @__PURE__ */ React66.createElement(
|
|
7821
7817
|
Flex,
|
|
7822
7818
|
{
|
|
7823
7819
|
direction: "column",
|
|
@@ -7835,21 +7831,21 @@ var SettingsModal = ({ open, onOpenChange, children }) => {
|
|
|
7835
7831
|
} : {})
|
|
7836
7832
|
},
|
|
7837
7833
|
settingsList.filter(({ tabName }) => showSetting[tabName]).map(({ content: Content9, title, tabName }) => {
|
|
7838
|
-
return /* @__PURE__ */
|
|
7834
|
+
return /* @__PURE__ */ React66.createElement(Tabs.Content, { key: tabName, value: tabName, className: settingContent() }, /* @__PURE__ */ React66.createElement(SettingsContentHeader, { onBack: resetSelection, isMobile }, title), /* @__PURE__ */ React66.createElement(Content9, { setHide: hideSettingByTabName(tabName) }));
|
|
7839
7835
|
})
|
|
7840
7836
|
)
|
|
7841
7837
|
),
|
|
7842
|
-
/* @__PURE__ */
|
|
7838
|
+
/* @__PURE__ */ React66.createElement(Dialog.Close, { css: { position: "absolute", right: "$10", top: "$10" } }, /* @__PURE__ */ React66.createElement(IconButton, { as: "div", "data-testid": "dialog_cross_icon" }, /* @__PURE__ */ React66.createElement(CrossIcon9, null)))
|
|
7843
7839
|
)));
|
|
7844
7840
|
};
|
|
7845
7841
|
var SettingsContentHeader = ({ children, isMobile, onBack }) => {
|
|
7846
|
-
return /* @__PURE__ */
|
|
7842
|
+
return /* @__PURE__ */ React66.createElement(Text, { variant: "h6", css: { mb: "$12", display: "flex", alignItems: "center" } }, isMobile && /* @__PURE__ */ React66.createElement(Box, { as: "span", css: { bg: "$surface_bright", mr: "$4", r: "$round", p: "$2" }, onClick: onBack }, /* @__PURE__ */ React66.createElement(ChevronLeftIcon2, null)), children);
|
|
7847
7843
|
};
|
|
7848
7844
|
var SettingsModal_default = SettingsModal;
|
|
7849
7845
|
|
|
7850
7846
|
// src/Prebuilt/components/Preview/PreviewForm.jsx
|
|
7851
7847
|
init_define_process_env();
|
|
7852
|
-
import
|
|
7848
|
+
import React67 from "react";
|
|
7853
7849
|
import { useMedia as useMedia6 } from "react-use";
|
|
7854
7850
|
import { JoinForm_JoinBtnType as JoinForm_JoinBtnType2 } from "@100mslive/types-prebuilt/elements/join_form";
|
|
7855
7851
|
import { selectPermissions as selectPermissions8, useHMSStore as useHMSStore35, useRecordingStreaming as useRecordingStreaming8 } from "@100mslive/react-sdk";
|
|
@@ -7873,13 +7869,13 @@ var PreviewForm = ({
|
|
|
7873
7869
|
const layout = useRoomLayout();
|
|
7874
7870
|
const { join_form: joinForm = {} } = ((_c = (_b = (_a = layout == null ? void 0 : layout.screens) == null ? void 0 : _a.preview) == null ? void 0 : _b.default) == null ? void 0 : _c.elements) || {};
|
|
7875
7871
|
const showGoLive = joinForm.join_btn_type === JoinForm_JoinBtnType2.JOIN_BTN_TYPE_JOIN_AND_GO_LIVE && !isHLSRunning && (permissions == null ? void 0 : permissions.hlsStreaming);
|
|
7876
|
-
return /* @__PURE__ */
|
|
7872
|
+
return /* @__PURE__ */ React67.createElement(
|
|
7877
7873
|
Form,
|
|
7878
7874
|
{
|
|
7879
7875
|
css: { flexDirection: cannotPublishVideo ? "column" : "row", "@md": { flexDirection: "row" } },
|
|
7880
7876
|
onSubmit: formSubmit
|
|
7881
7877
|
},
|
|
7882
|
-
/* @__PURE__ */
|
|
7878
|
+
/* @__PURE__ */ React67.createElement(Flex, { align: "center", css: { gap: "$8", w: "100%" } }, /* @__PURE__ */ React67.createElement(
|
|
7883
7879
|
Input,
|
|
7884
7880
|
{
|
|
7885
7881
|
required: true,
|
|
@@ -7891,8 +7887,8 @@ var PreviewForm = ({
|
|
|
7891
7887
|
autoFocus: true,
|
|
7892
7888
|
autoComplete: "name"
|
|
7893
7889
|
}
|
|
7894
|
-
), cannotPublishAudio && cannotPublishVideo && !isMobile ? /* @__PURE__ */
|
|
7895
|
-
|
|
7890
|
+
), cannotPublishAudio && cannotPublishVideo && !isMobile ? /* @__PURE__ */ React67.createElement(PreviewSettings, null) : null),
|
|
7891
|
+
/* @__PURE__ */ React67.createElement(Button, { type: "submit", icon: true, disabled: !name || !enableJoin, onClick: onJoin }, showGoLive ? /* @__PURE__ */ React67.createElement(RadioIcon, { height: 18, width: 18 }) : null, showGoLive ? joinForm.go_live_btn_label : joinForm.join_btn_label)
|
|
7896
7892
|
);
|
|
7897
7893
|
};
|
|
7898
7894
|
var Form = styled("form", {
|
|
@@ -7909,7 +7905,7 @@ var Form = styled("form", {
|
|
|
7909
7905
|
var PreviewForm_default = PreviewForm;
|
|
7910
7906
|
|
|
7911
7907
|
// src/Prebuilt/components/Preview/PreviewJoin.jsx
|
|
7912
|
-
var VirtualBackground =
|
|
7908
|
+
var VirtualBackground = React68.lazy(() => import("./VirtualBackground-PPX7DVS3.js"));
|
|
7913
7909
|
var getParticipantChipContent = (peerCount = 0) => {
|
|
7914
7910
|
if (peerCount === 0) {
|
|
7915
7911
|
return "You are the first to join";
|
|
@@ -7969,15 +7965,29 @@ var PreviewJoin = ({ onJoin, skipPreview, initialName, asRole }) => {
|
|
|
7969
7965
|
}
|
|
7970
7966
|
}
|
|
7971
7967
|
}, [authToken, skipPreview]);
|
|
7972
|
-
return roomState === HMSRoomState3.Preview ? /* @__PURE__ */
|
|
7968
|
+
return roomState === HMSRoomState3.Preview ? /* @__PURE__ */ React68.createElement(Container4, { css: { h: "100%", pt: "$10", "@md": { justifyContent: "space-between" } } }, toggleVideo ? null : /* @__PURE__ */ React68.createElement(Box, null), /* @__PURE__ */ React68.createElement(Flex, { direction: "column", justify: "center", css: { w: "100%", maxWidth: "360px" } }, /* @__PURE__ */ React68.createElement(Logo, null), /* @__PURE__ */ React68.createElement(
|
|
7969
|
+
Text,
|
|
7970
|
+
{
|
|
7971
|
+
variant: "h4",
|
|
7972
|
+
css: { wordBreak: "break-word", textAlign: "center", mt: "$14", mb: "$4", "@md": { mt: "$8", mb: "$2" } }
|
|
7973
|
+
},
|
|
7974
|
+
previewHeader.title
|
|
7975
|
+
), /* @__PURE__ */ React68.createElement(
|
|
7976
|
+
Text,
|
|
7977
|
+
{
|
|
7978
|
+
css: { c: "$on_surface_medium", my: "0", textAlign: "center", maxWidth: "100%", wordWrap: "break-word" },
|
|
7979
|
+
variant: "sm"
|
|
7980
|
+
},
|
|
7981
|
+
previewHeader.sub_title
|
|
7982
|
+
), /* @__PURE__ */ React68.createElement(Flex, { justify: "center", css: { mt: "$14", mb: "$14", "@md": { mt: "$8", mb: "0" }, gap: "$4" } }, isStreamingOn ? /* @__PURE__ */ React68.createElement(
|
|
7973
7983
|
Chip_default,
|
|
7974
7984
|
{
|
|
7975
7985
|
content: "LIVE",
|
|
7976
7986
|
backgroundColor: "$alert_error_default",
|
|
7977
7987
|
textColor: "#FFF",
|
|
7978
|
-
icon: /* @__PURE__ */
|
|
7988
|
+
icon: /* @__PURE__ */ React68.createElement(Box, { css: { h: "$sm", w: "$sm", backgroundColor: "$on_primary_high", borderRadius: "$round" } })
|
|
7979
7989
|
}
|
|
7980
|
-
) : null, /* @__PURE__ */
|
|
7990
|
+
) : null, /* @__PURE__ */ React68.createElement(Chip_default, { content: getParticipantChipContent(peerCount), hideIfNoContent: true }))), toggleVideo ? /* @__PURE__ */ React68.createElement(
|
|
7981
7991
|
Flex,
|
|
7982
7992
|
{
|
|
7983
7993
|
align: "center",
|
|
@@ -7987,15 +7997,15 @@ var PreviewJoin = ({ onJoin, skipPreview, initialName, asRole }) => {
|
|
|
7987
7997
|
flexDirection: "column"
|
|
7988
7998
|
}
|
|
7989
7999
|
},
|
|
7990
|
-
/* @__PURE__ */
|
|
7991
|
-
) : null, /* @__PURE__ */
|
|
8000
|
+
/* @__PURE__ */ React68.createElement(PreviewTile, { name, error: previewError })
|
|
8001
|
+
) : null, /* @__PURE__ */ React68.createElement(Box, { css: { w: "100%", maxWidth: "360px" } }, /* @__PURE__ */ React68.createElement(
|
|
7992
8002
|
PreviewControls,
|
|
7993
8003
|
{
|
|
7994
8004
|
enableJoin,
|
|
7995
8005
|
savePreferenceAndJoin,
|
|
7996
8006
|
hideSettings: !toggleVideo && !toggleAudio
|
|
7997
8007
|
}
|
|
7998
|
-
), /* @__PURE__ */
|
|
8008
|
+
), /* @__PURE__ */ React68.createElement(
|
|
7999
8009
|
PreviewForm_default,
|
|
8000
8010
|
{
|
|
8001
8011
|
name,
|
|
@@ -8005,7 +8015,7 @@ var PreviewJoin = ({ onJoin, skipPreview, initialName, asRole }) => {
|
|
|
8005
8015
|
cannotPublishVideo: !toggleVideo,
|
|
8006
8016
|
cannotPublishAudio: !toggleAudio
|
|
8007
8017
|
}
|
|
8008
|
-
))) : /* @__PURE__ */
|
|
8018
|
+
))) : /* @__PURE__ */ React68.createElement(FullPageProgress_default, null);
|
|
8009
8019
|
};
|
|
8010
8020
|
var Container4 = styled("div", __spreadProps(__spreadValues({
|
|
8011
8021
|
width: "100%"
|
|
@@ -8025,7 +8035,7 @@ var PreviewTile = ({ name, error }) => {
|
|
|
8025
8035
|
const {
|
|
8026
8036
|
aspectRatio: { width, height }
|
|
8027
8037
|
} = useTheme();
|
|
8028
|
-
return /* @__PURE__ */
|
|
8038
|
+
return /* @__PURE__ */ React68.createElement(
|
|
8029
8039
|
StyledVideoTile.Container,
|
|
8030
8040
|
{
|
|
8031
8041
|
css: {
|
|
@@ -8041,20 +8051,20 @@ var PreviewTile = ({ name, error }) => {
|
|
|
8041
8051
|
},
|
|
8042
8052
|
ref: borderAudioRef
|
|
8043
8053
|
},
|
|
8044
|
-
localPeer ? /* @__PURE__ */
|
|
8054
|
+
localPeer ? /* @__PURE__ */ React68.createElement(React68.Fragment, null, /* @__PURE__ */ React68.createElement(TileConnection_default, { name, peerId: localPeer.id, hideLabel: true }), /* @__PURE__ */ React68.createElement(
|
|
8045
8055
|
Video,
|
|
8046
8056
|
{
|
|
8047
8057
|
mirror: (track == null ? void 0 : track.facingMode) !== "environment" && mirrorLocalVideo,
|
|
8048
8058
|
trackId: localPeer.videoTrack,
|
|
8049
8059
|
"data-testid": "preview_tile"
|
|
8050
8060
|
}
|
|
8051
|
-
), !isVideoOn ? /* @__PURE__ */
|
|
8052
|
-
showMuteIcon ? /* @__PURE__ */
|
|
8061
|
+
), !isVideoOn ? /* @__PURE__ */ React68.createElement(StyledVideoTile.AvatarContainer, null, /* @__PURE__ */ React68.createElement(Avatar, { name, "data-testid": "preview_avatar_tile" })) : null) : !error ? /* @__PURE__ */ React68.createElement(FullPageProgress_default, null) : null,
|
|
8062
|
+
showMuteIcon ? /* @__PURE__ */ React68.createElement(StyledVideoTile.AudioIndicator, { size: "medium" }, /* @__PURE__ */ React68.createElement(MicOffIcon2, null)) : null
|
|
8053
8063
|
);
|
|
8054
8064
|
};
|
|
8055
8065
|
var PreviewControls = ({ hideSettings }) => {
|
|
8056
8066
|
const isVideoOn = useHMSStore36(selectIsLocalVideoEnabled4);
|
|
8057
|
-
return /* @__PURE__ */
|
|
8067
|
+
return /* @__PURE__ */ React68.createElement(
|
|
8058
8068
|
Flex,
|
|
8059
8069
|
{
|
|
8060
8070
|
justify: "between",
|
|
@@ -8063,13 +8073,13 @@ var PreviewControls = ({ hideSettings }) => {
|
|
|
8063
8073
|
mt: "$8"
|
|
8064
8074
|
}
|
|
8065
8075
|
},
|
|
8066
|
-
/* @__PURE__ */
|
|
8067
|
-
!hideSettings ? /* @__PURE__ */
|
|
8076
|
+
/* @__PURE__ */ React68.createElement(Flex, { css: { gap: "$4" } }, /* @__PURE__ */ React68.createElement(AudioVideoToggle, { compact: true }), /* @__PURE__ */ React68.createElement(Suspense, { fallback: "" }, isVideoOn ? /* @__PURE__ */ React68.createElement(VirtualBackground, null) : null)),
|
|
8077
|
+
!hideSettings ? /* @__PURE__ */ React68.createElement(PreviewSettings, null) : null
|
|
8068
8078
|
);
|
|
8069
8079
|
};
|
|
8070
|
-
var PreviewSettings =
|
|
8080
|
+
var PreviewSettings = React68.memo(() => {
|
|
8071
8081
|
const [open, setOpen] = useState31(false);
|
|
8072
|
-
return /* @__PURE__ */
|
|
8082
|
+
return /* @__PURE__ */ React68.createElement(Fragment12, null, /* @__PURE__ */ React68.createElement(IconButton_default, { "data-testid": "preview_setting_btn", css: { flexShrink: 0 }, onClick: () => setOpen((value) => !value) }, /* @__PURE__ */ React68.createElement(SettingsIcon3, null)), open && /* @__PURE__ */ React68.createElement(SettingsModal_default, { open, onOpenChange: setOpen }));
|
|
8073
8083
|
});
|
|
8074
8084
|
var PreviewJoin_default = PreviewJoin;
|
|
8075
8085
|
|
|
@@ -8092,12 +8102,15 @@ var useSkipPreview = () => {
|
|
|
8092
8102
|
|
|
8093
8103
|
// src/Prebuilt/components/Preview/PreviewContainer.jsx
|
|
8094
8104
|
var PreviewContainer = () => {
|
|
8105
|
+
var _a, _b, _c;
|
|
8095
8106
|
const navigate = useNavigation();
|
|
8096
8107
|
const skipPreview = useSkipPreview();
|
|
8097
8108
|
const previewAsRole = useSearchParam4(QUERY_PARAM_PREVIEW_AS_ROLE);
|
|
8098
8109
|
const initialName = useSearchParam4(QUERY_PARAM_NAME) || (skipPreview ? "Beam" : "");
|
|
8099
8110
|
const { roomId: urlRoomId, role: userRole } = useParams3();
|
|
8100
8111
|
const authToken = useAuthToken();
|
|
8112
|
+
const roomLayout = useRoomLayout();
|
|
8113
|
+
const { preview_header: previewHeader = {} } = ((_c = (_b = (_a = roomLayout == null ? void 0 : roomLayout.screens) == null ? void 0 : _a.preview) == null ? void 0 : _b.default) == null ? void 0 : _c.elements) || {};
|
|
8101
8114
|
const roomState = useHMSStore37(selectRoomState4);
|
|
8102
8115
|
const isPreview = roomState === HMSRoomState4.Preview;
|
|
8103
8116
|
const onJoin = () => {
|
|
@@ -8107,15 +8120,15 @@ var PreviewContainer = () => {
|
|
|
8107
8120
|
}
|
|
8108
8121
|
navigate(meetingURL);
|
|
8109
8122
|
};
|
|
8110
|
-
return /* @__PURE__ */
|
|
8123
|
+
return /* @__PURE__ */ React69.createElement(Flex, { direction: "column", css: { size: "100%" } }, isPreview ? null : /* @__PURE__ */ React69.createElement(Box, { css: { h: "$18", "@md": { h: "$17", flexShrink: 0 } }, "data-testid": "header" }, /* @__PURE__ */ React69.createElement(Header2, null)), /* @__PURE__ */ React69.createElement(
|
|
8111
8124
|
Flex,
|
|
8112
8125
|
{
|
|
8113
8126
|
css: { flex: "1 1 0", position: "relative", overflowY: "auto", color: "$primary_default" },
|
|
8114
8127
|
justify: "center",
|
|
8115
8128
|
align: "center"
|
|
8116
8129
|
},
|
|
8117
|
-
authToken ? /* @__PURE__ */
|
|
8118
|
-
/* @__PURE__ */
|
|
8130
|
+
authToken && Object.keys(previewHeader).length > 0 ? /* @__PURE__ */ React69.createElement(PreviewJoin_default, { initialName, skipPreview, asRole: previewAsRole, onJoin }) : /* @__PURE__ */ React69.createElement(FullPageProgress_default, null),
|
|
8131
|
+
/* @__PURE__ */ React69.createElement(
|
|
8119
8132
|
SidePane_default,
|
|
8120
8133
|
{
|
|
8121
8134
|
css: {
|
|
@@ -8131,15 +8144,15 @@ var PreviewContainer_default = PreviewContainer;
|
|
|
8131
8144
|
|
|
8132
8145
|
// src/Prebuilt/components/Toast/ToastContainer.jsx
|
|
8133
8146
|
init_define_process_env();
|
|
8134
|
-
import
|
|
8147
|
+
import React71, { useEffect as useEffect33, useState as useState32 } from "react";
|
|
8135
8148
|
import { selectIsConnectedToRoom as selectIsConnectedToRoom8, useHMSStore as useHMSStore38 } from "@100mslive/react-sdk";
|
|
8136
8149
|
|
|
8137
8150
|
// src/Prebuilt/components/Toast/Toast.jsx
|
|
8138
8151
|
init_define_process_env();
|
|
8139
|
-
import
|
|
8152
|
+
import React70 from "react";
|
|
8140
8153
|
var Toast2 = (_a) => {
|
|
8141
8154
|
var _b = _a, { title, description, close = true, open, duration, onOpenChange, icon } = _b, props = __objRest(_b, ["title", "description", "close", "open", "duration", "onOpenChange", "icon"]);
|
|
8142
|
-
return /* @__PURE__ */
|
|
8155
|
+
return /* @__PURE__ */ React70.createElement(
|
|
8143
8156
|
Toast.HMSToast,
|
|
8144
8157
|
__spreadValues({
|
|
8145
8158
|
title,
|
|
@@ -8163,9 +8176,9 @@ var ToastContainer = () => {
|
|
|
8163
8176
|
ToastManager.removeListener(setToast);
|
|
8164
8177
|
};
|
|
8165
8178
|
}, []);
|
|
8166
|
-
return /* @__PURE__ */
|
|
8167
|
-
return /* @__PURE__ */
|
|
8168
|
-
}), /* @__PURE__ */
|
|
8179
|
+
return /* @__PURE__ */ React71.createElement(Toast.Provider, { swipeDirection: "left", duration: 3e3 }, toasts.slice(0, MAX_TOASTS).map((toast) => {
|
|
8180
|
+
return /* @__PURE__ */ React71.createElement(Toast2, __spreadProps(__spreadValues({ key: toast.id }, toast), { onOpenChange: (value) => !value && ToastManager.removeToast(toast.id) }));
|
|
8181
|
+
}), /* @__PURE__ */ React71.createElement(
|
|
8169
8182
|
Toast.Viewport,
|
|
8170
8183
|
{
|
|
8171
8184
|
css: __spreadValues({
|
|
@@ -8177,7 +8190,7 @@ var ToastContainer = () => {
|
|
|
8177
8190
|
|
|
8178
8191
|
// src/Prebuilt/plugins/FlyingEmoji.jsx
|
|
8179
8192
|
init_define_process_env();
|
|
8180
|
-
import
|
|
8193
|
+
import React72, { useCallback as useCallback23, useEffect as useEffect34, useMemo as useMemo6, useState as useState33 } from "react";
|
|
8181
8194
|
import { useMedia as useMedia7 } from "react-use";
|
|
8182
8195
|
import { selectLocalPeerID as selectLocalPeerID8, selectPeerNameByID as selectPeerNameByID4, useHMSStore as useHMSStore39, useHMSVanillaStore as useHMSVanillaStore5 } from "@100mslive/react-sdk";
|
|
8183
8196
|
var emojiCount = 1;
|
|
@@ -8236,7 +8249,7 @@ function FlyingEmoji() {
|
|
|
8236
8249
|
useEffect34(() => {
|
|
8237
8250
|
window.showFlyingEmoji = showFlyingEmoji;
|
|
8238
8251
|
}, [showFlyingEmoji]);
|
|
8239
|
-
return /* @__PURE__ */
|
|
8252
|
+
return /* @__PURE__ */ React72.createElement(
|
|
8240
8253
|
Box,
|
|
8241
8254
|
{
|
|
8242
8255
|
css: {
|
|
@@ -8252,7 +8265,7 @@ function FlyingEmoji() {
|
|
|
8252
8265
|
}
|
|
8253
8266
|
},
|
|
8254
8267
|
emojis.map((emoji) => {
|
|
8255
|
-
return /* @__PURE__ */
|
|
8268
|
+
return /* @__PURE__ */ React72.createElement(
|
|
8256
8269
|
Flex,
|
|
8257
8270
|
{
|
|
8258
8271
|
key: emoji.id,
|
|
@@ -8268,8 +8281,8 @@ function FlyingEmoji() {
|
|
|
8268
8281
|
setEmojis(emojis.filter((item) => item.id !== emoji.id));
|
|
8269
8282
|
}
|
|
8270
8283
|
},
|
|
8271
|
-
/* @__PURE__ */
|
|
8272
|
-
/* @__PURE__ */
|
|
8284
|
+
/* @__PURE__ */ React72.createElement(Box, null, /* @__PURE__ */ React72.createElement("em-emoji", { id: emoji.emojiId, size: "48px", set: "apple" })),
|
|
8285
|
+
/* @__PURE__ */ React72.createElement(
|
|
8273
8286
|
Box,
|
|
8274
8287
|
{
|
|
8275
8288
|
css: {
|
|
@@ -8279,7 +8292,7 @@ function FlyingEmoji() {
|
|
|
8279
8292
|
borderRadius: "$1"
|
|
8280
8293
|
}
|
|
8281
8294
|
},
|
|
8282
|
-
/* @__PURE__ */
|
|
8295
|
+
/* @__PURE__ */ React72.createElement(
|
|
8283
8296
|
Text,
|
|
8284
8297
|
{
|
|
8285
8298
|
css: {
|
|
@@ -8298,7 +8311,7 @@ function FlyingEmoji() {
|
|
|
8298
8311
|
|
|
8299
8312
|
// src/Prebuilt/plugins/RemoteStopScreenshare.jsx
|
|
8300
8313
|
init_define_process_env();
|
|
8301
|
-
import
|
|
8314
|
+
import React73, { useCallback as useCallback24 } from "react";
|
|
8302
8315
|
import { useCustomEvent as useCustomEvent2, useHMSActions as useHMSActions26 } from "@100mslive/react-sdk";
|
|
8303
8316
|
function RemoteStopScreenshare() {
|
|
8304
8317
|
const actions = useHMSActions26();
|
|
@@ -8309,11 +8322,11 @@ function RemoteStopScreenshare() {
|
|
|
8309
8322
|
type: REMOTE_STOP_SCREENSHARE_TYPE,
|
|
8310
8323
|
onEvent: onRemoteStopScreenshare
|
|
8311
8324
|
});
|
|
8312
|
-
return /* @__PURE__ */
|
|
8325
|
+
return /* @__PURE__ */ React73.createElement(React73.Fragment, null);
|
|
8313
8326
|
}
|
|
8314
8327
|
|
|
8315
8328
|
// src/Prebuilt/App.jsx
|
|
8316
|
-
var Conference =
|
|
8329
|
+
var Conference = React74.lazy(() => import("./conference-ORQKXGY3.js"));
|
|
8317
8330
|
var getAspectRatio = ({ width, height }) => {
|
|
8318
8331
|
const host = define_process_env_default.REACT_APP_HOST_NAME;
|
|
8319
8332
|
const portraitDomains = (define_process_env_default.REACT_APP_PORTRAIT_MODE_DOMAINS || "").split(",");
|
|
@@ -8322,7 +8335,7 @@ var getAspectRatio = ({ width, height }) => {
|
|
|
8322
8335
|
}
|
|
8323
8336
|
return { width, height };
|
|
8324
8337
|
};
|
|
8325
|
-
var HMSPrebuilt =
|
|
8338
|
+
var HMSPrebuilt = React74.forwardRef(
|
|
8326
8339
|
({
|
|
8327
8340
|
roomCode = "",
|
|
8328
8341
|
logo,
|
|
@@ -8345,7 +8358,7 @@ var HMSPrebuilt = React73.forwardRef(
|
|
|
8345
8358
|
const metadata = "";
|
|
8346
8359
|
const { 0: width, 1: height } = aspectRatio.split("-").map((el) => parseInt(el));
|
|
8347
8360
|
const reactiveStore = useRef13();
|
|
8348
|
-
const [hydrated, setHydrated] =
|
|
8361
|
+
const [hydrated, setHydrated] = React74.useState(false);
|
|
8349
8362
|
useEffect35(() => {
|
|
8350
8363
|
setHydrated(true);
|
|
8351
8364
|
const hms = new HMSReactiveStore();
|
|
@@ -8388,7 +8401,7 @@ var HMSPrebuilt = React73.forwardRef(
|
|
|
8388
8401
|
return null;
|
|
8389
8402
|
}
|
|
8390
8403
|
globalStyles();
|
|
8391
|
-
return /* @__PURE__ */
|
|
8404
|
+
return /* @__PURE__ */ React74.createElement(ErrorBoundary, null, /* @__PURE__ */ React74.createElement(
|
|
8392
8405
|
HMSPrebuiltContext.Provider,
|
|
8393
8406
|
{
|
|
8394
8407
|
value: {
|
|
@@ -8401,7 +8414,7 @@ var HMSPrebuilt = React73.forwardRef(
|
|
|
8401
8414
|
endpoints
|
|
8402
8415
|
}
|
|
8403
8416
|
},
|
|
8404
|
-
/* @__PURE__ */
|
|
8417
|
+
/* @__PURE__ */ React74.createElement(
|
|
8405
8418
|
HMSRoomProvider,
|
|
8406
8419
|
{
|
|
8407
8420
|
isHMSStatsOn: FeatureFlags.enableStatsForNerds,
|
|
@@ -8410,7 +8423,7 @@ var HMSPrebuilt = React73.forwardRef(
|
|
|
8410
8423
|
notifications: reactiveStore.current.hmsNotifications,
|
|
8411
8424
|
stats: reactiveStore.current.hmsStats
|
|
8412
8425
|
},
|
|
8413
|
-
/* @__PURE__ */
|
|
8426
|
+
/* @__PURE__ */ React74.createElement(RoomLayoutProvider, { roomLayoutEndpoint, overrideLayout }, /* @__PURE__ */ React74.createElement(RoomLayoutContext.Consumer, null, (layout) => {
|
|
8414
8427
|
var _a;
|
|
8415
8428
|
const theme2 = ((_a = layout.themes) == null ? void 0 : _a[0]) || {};
|
|
8416
8429
|
const { typography: typography2 } = layout;
|
|
@@ -8418,10 +8431,10 @@ var HMSPrebuilt = React73.forwardRef(
|
|
|
8418
8431
|
if (typography2 == null ? void 0 : typography2.font_family) {
|
|
8419
8432
|
fontFamily = [`${typography2 == null ? void 0 : typography2.font_family}`, ...fontFamily];
|
|
8420
8433
|
}
|
|
8421
|
-
return /* @__PURE__ */
|
|
8434
|
+
return /* @__PURE__ */ React74.createElement(
|
|
8422
8435
|
HMSThemeProvider,
|
|
8423
8436
|
{
|
|
8424
|
-
themeType: theme2.name
|
|
8437
|
+
themeType: `${theme2.name}-${Date.now()}`,
|
|
8425
8438
|
aspectRatio: getAspectRatio({ width, height }),
|
|
8426
8439
|
theme: {
|
|
8427
8440
|
colors: theme2.palette,
|
|
@@ -8430,9 +8443,9 @@ var HMSPrebuilt = React73.forwardRef(
|
|
|
8430
8443
|
}
|
|
8431
8444
|
}
|
|
8432
8445
|
},
|
|
8433
|
-
/* @__PURE__ */
|
|
8434
|
-
/* @__PURE__ */
|
|
8435
|
-
/* @__PURE__ */
|
|
8446
|
+
/* @__PURE__ */ React74.createElement(AppData, { appDetails: metadata, tokenEndpoint: tokenByRoomIdRoleEndpoint }),
|
|
8447
|
+
/* @__PURE__ */ React74.createElement(Init, null),
|
|
8448
|
+
/* @__PURE__ */ React74.createElement(
|
|
8436
8449
|
Box,
|
|
8437
8450
|
{
|
|
8438
8451
|
css: {
|
|
@@ -8442,7 +8455,7 @@ var HMSPrebuilt = React73.forwardRef(
|
|
|
8442
8455
|
"-webkit-text-size-adjust": "100%"
|
|
8443
8456
|
}
|
|
8444
8457
|
},
|
|
8445
|
-
/* @__PURE__ */
|
|
8458
|
+
/* @__PURE__ */ React74.createElement(AppRoutes, { authTokenByRoomCodeEndpoint: tokenByRoomCodeEndpoint })
|
|
8446
8459
|
)
|
|
8447
8460
|
);
|
|
8448
8461
|
}))
|
|
@@ -8454,43 +8467,43 @@ HMSPrebuilt.displayName = "HMSPrebuilt";
|
|
|
8454
8467
|
var Redirector = ({ showPreview }) => {
|
|
8455
8468
|
const { roomId, role } = useParams4();
|
|
8456
8469
|
if (!roomId && !role) {
|
|
8457
|
-
return /* @__PURE__ */
|
|
8470
|
+
return /* @__PURE__ */ React74.createElement(Navigate, { to: "/" });
|
|
8458
8471
|
}
|
|
8459
8472
|
if (!roomId) {
|
|
8460
|
-
return /* @__PURE__ */
|
|
8473
|
+
return /* @__PURE__ */ React74.createElement(Navigate, { to: "/" });
|
|
8461
8474
|
}
|
|
8462
8475
|
if (["streaming", "preview", "meeting", "leave"].includes(roomId) && !role) {
|
|
8463
|
-
return /* @__PURE__ */
|
|
8476
|
+
return /* @__PURE__ */ React74.createElement(Navigate, { to: "/" });
|
|
8464
8477
|
}
|
|
8465
|
-
return /* @__PURE__ */
|
|
8478
|
+
return /* @__PURE__ */ React74.createElement(Navigate, { to: `${getRoutePrefix()}/${showPreview ? "preview" : "meeting"}/${roomId}/${role || ""}` });
|
|
8466
8479
|
};
|
|
8467
8480
|
var RouteList = () => {
|
|
8468
8481
|
const { showPreview, showLeave } = useHMSPrebuiltContext();
|
|
8469
|
-
return /* @__PURE__ */
|
|
8482
|
+
return /* @__PURE__ */ React74.createElement(Routes, null, showPreview && /* @__PURE__ */ React74.createElement(Route, { path: "preview" }, /* @__PURE__ */ React74.createElement(
|
|
8470
8483
|
Route,
|
|
8471
8484
|
{
|
|
8472
8485
|
path: ":roomId/:role",
|
|
8473
|
-
element: /* @__PURE__ */
|
|
8486
|
+
element: /* @__PURE__ */ React74.createElement(Suspense2, { fallback: /* @__PURE__ */ React74.createElement(FullPageProgress_default, { loadingText: "Loading preview..." }) }, /* @__PURE__ */ React74.createElement(PreviewContainer_default, null))
|
|
8474
8487
|
}
|
|
8475
|
-
), /* @__PURE__ */
|
|
8488
|
+
), /* @__PURE__ */ React74.createElement(
|
|
8476
8489
|
Route,
|
|
8477
8490
|
{
|
|
8478
8491
|
path: ":roomId",
|
|
8479
|
-
element: /* @__PURE__ */
|
|
8492
|
+
element: /* @__PURE__ */ React74.createElement(Suspense2, { fallback: /* @__PURE__ */ React74.createElement(FullPageProgress_default, { loadingText: "Loading preview..." }) }, /* @__PURE__ */ React74.createElement(PreviewContainer_default, null))
|
|
8480
8493
|
}
|
|
8481
|
-
)), /* @__PURE__ */
|
|
8494
|
+
)), /* @__PURE__ */ React74.createElement(Route, { path: "meeting" }, /* @__PURE__ */ React74.createElement(
|
|
8482
8495
|
Route,
|
|
8483
8496
|
{
|
|
8484
8497
|
path: ":roomId/:role",
|
|
8485
|
-
element: /* @__PURE__ */
|
|
8498
|
+
element: /* @__PURE__ */ React74.createElement(Suspense2, { fallback: /* @__PURE__ */ React74.createElement(FullPageProgress_default, { loadingText: "Joining..." }) }, /* @__PURE__ */ React74.createElement(Conference, null))
|
|
8486
8499
|
}
|
|
8487
|
-
), /* @__PURE__ */
|
|
8500
|
+
), /* @__PURE__ */ React74.createElement(
|
|
8488
8501
|
Route,
|
|
8489
8502
|
{
|
|
8490
8503
|
path: ":roomId",
|
|
8491
|
-
element: /* @__PURE__ */
|
|
8504
|
+
element: /* @__PURE__ */ React74.createElement(Suspense2, { fallback: /* @__PURE__ */ React74.createElement(FullPageProgress_default, { loadingText: "Joining..." }) }, /* @__PURE__ */ React74.createElement(Conference, null))
|
|
8492
8505
|
}
|
|
8493
|
-
)), showLeave && /* @__PURE__ */
|
|
8506
|
+
)), showLeave && /* @__PURE__ */ React74.createElement(Route, { path: "leave" }, /* @__PURE__ */ React74.createElement(Route, { path: ":roomId/:role", element: /* @__PURE__ */ React74.createElement(PostLeave_default, null) }), /* @__PURE__ */ React74.createElement(Route, { path: ":roomId", element: /* @__PURE__ */ React74.createElement(PostLeave_default, null) })), /* @__PURE__ */ React74.createElement(Route, { path: "/:roomId/:role", element: /* @__PURE__ */ React74.createElement(Redirector, { showPreview }) }), /* @__PURE__ */ React74.createElement(Route, { path: "/:roomId/", element: /* @__PURE__ */ React74.createElement(Redirector, { showPreview }) }));
|
|
8494
8507
|
};
|
|
8495
8508
|
var BackSwipe = () => {
|
|
8496
8509
|
const isConnectedToRoom = useHMSStore40(selectIsConnectedToRoom9);
|
|
@@ -8510,10 +8523,10 @@ var BackSwipe = () => {
|
|
|
8510
8523
|
};
|
|
8511
8524
|
var Router = ({ children }) => {
|
|
8512
8525
|
const { roomId, role, roomCode } = useHMSPrebuiltContext();
|
|
8513
|
-
return [roomId, role, roomCode].every((value) => !value) ? /* @__PURE__ */
|
|
8526
|
+
return [roomId, role, roomCode].every((value) => !value) ? /* @__PURE__ */ React74.createElement(BrowserRouter, null, children) : /* @__PURE__ */ React74.createElement(MemoryRouter, { initialEntries: [`/${roomCode ? roomCode : `${roomId}/${role || ""}`}`], initialIndex: 0 }, children);
|
|
8514
8527
|
};
|
|
8515
8528
|
function AppRoutes({ authTokenByRoomCodeEndpoint }) {
|
|
8516
|
-
return /* @__PURE__ */
|
|
8529
|
+
return /* @__PURE__ */ React74.createElement(Router, null, /* @__PURE__ */ React74.createElement(ToastContainer, null), /* @__PURE__ */ React74.createElement(Notifications, null), /* @__PURE__ */ React74.createElement(BackSwipe, null), /* @__PURE__ */ React74.createElement(FlyingEmoji, null), /* @__PURE__ */ React74.createElement(RemoteStopScreenshare, null), /* @__PURE__ */ React74.createElement(KeyboardHandler, null), /* @__PURE__ */ React74.createElement(BeamSpeakerLabelsLogging, null), /* @__PURE__ */ React74.createElement(AuthToken_default, { authTokenByRoomCodeEndpoint }), /* @__PURE__ */ React74.createElement(Routes, null, /* @__PURE__ */ React74.createElement(Route, { path: "/*", element: /* @__PURE__ */ React74.createElement(RouteList, null) }), /* @__PURE__ */ React74.createElement(Route, { path: "/streaming/*", element: /* @__PURE__ */ React74.createElement(RouteList, null) })));
|
|
8517
8530
|
}
|
|
8518
8531
|
|
|
8519
8532
|
// src/Progress/index.tsx
|
|
@@ -8623,4 +8636,4 @@ export {
|
|
|
8623
8636
|
HMSPrebuilt,
|
|
8624
8637
|
Progress
|
|
8625
8638
|
};
|
|
8626
|
-
//# sourceMappingURL=chunk-
|
|
8639
|
+
//# sourceMappingURL=chunk-LMSP5ETL.js.map
|