@100mslive/roomkit-react 0.1.0 → 0.1.2-alpha.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +18 -0
- package/dist/Accordion/Accordion.d.ts +62 -138
- package/dist/Accordion/index.d.ts +62 -138
- package/dist/{ActiveSpeakerView-H3VYXANB.js → ActiveSpeakerView-4XPIRZOK.js} +6 -6
- package/dist/{HLSView-6BVBCQM7.css → ActiveSpeakerView-ADEYHQMU.css} +2 -2
- package/dist/{PinnedTrackView-QQ5FDXJX.css.map → ActiveSpeakerView-ADEYHQMU.css.map} +2 -2
- package/dist/Avatar/Avatar.d.ts +31 -69
- package/dist/Button/Button.d.ts +31 -69
- package/dist/Checkbox/Checkbox.d.ts +62 -138
- package/dist/Collapsible/Collapsible.d.ts +93 -207
- package/dist/Divider/Divider.d.ts +62 -138
- package/dist/Dropdown/Dropdown.d.ts +372 -828
- package/dist/Fieldset/Fieldset.d.ts +31 -69
- package/dist/Footer/Footer.d.ts +248 -552
- package/dist/{conference-KN6OKGDU.css → HLSView-DWEEMZ6Z.css} +2 -2
- package/dist/{HLSView-6BVBCQM7.css.map → HLSView-DWEEMZ6Z.css.map} +2 -2
- package/dist/{HLSView-3RDXRV7Y.js → HLSView-I26CVF5U.js} +16 -16
- package/dist/HLSView-I26CVF5U.js.map +7 -0
- package/dist/IconButton/IconButton.d.ts +31 -69
- package/dist/Input/Input.d.ts +189 -417
- package/dist/Label/Label.d.ts +31 -69
- package/dist/Layout/Box.d.ts +31 -69
- package/dist/Layout/Flex.d.ts +31 -69
- package/dist/Link/Link.d.ts +31 -69
- package/dist/Modal/Dialog.d.ts +248 -552
- package/dist/Modal/DialogContent.d.ts +217 -483
- package/dist/Pagination/StyledPagination.d.ts +124 -276
- package/dist/{PinnedTrackView-QQ5FDXJX.css → PinnedTrackView-5DPVVOZW.css} +2 -2
- package/dist/{conference-KN6OKGDU.css.map → PinnedTrackView-5DPVVOZW.css.map} +2 -2
- package/dist/{PinnedTrackView-453PELNU.js → PinnedTrackView-GGTCNH5V.js} +6 -6
- package/dist/Popover/index.d.ts +93 -207
- package/dist/Prebuilt/provider/roomLayoutProvider/constants/index.d.ts +2 -0
- package/dist/Prebuilt/provider/roomLayoutProvider/hooks/useFetchRoomLayout.d.ts +9 -0
- package/dist/Prebuilt/provider/roomLayoutProvider/index.d.ts +9 -0
- package/dist/Progress/index.d.ts +62 -138
- package/dist/RadioGroup/RadioGroup.d.ts +93 -207
- package/dist/ReactSelect/ReactSelect.d.ts +310 -690
- package/dist/Select/Select.d.ts +93 -207
- package/dist/Slider/Slider.d.ts +31 -69
- package/dist/Stats/StyledStats.d.ts +186 -414
- package/dist/Switch/Switch.d.ts +31 -69
- package/dist/Tabs/Tabs.d.ts +124 -276
- package/dist/Text/Text.d.ts +31 -69
- package/dist/Theme/ThemeProvider.d.ts +63 -140
- package/dist/Theme/base.config.d.ts +31 -53
- package/dist/Theme/index.d.ts +0 -1
- package/dist/Theme/stitches.config.d.ts +404 -915
- package/dist/TileMenu/StyledMenuTile.d.ts +217 -483
- package/dist/Toast/Toast.d.ts +187 -415
- package/dist/Video/Video.d.ts +31 -69
- package/dist/VideoList/StyledVideoList.d.ts +93 -207
- package/dist/VideoTile/StyledVideoTile.d.ts +279 -621
- package/dist/{VirtualBackground-LHYBWUT5.js → VirtualBackground-ZRRE4DUA.js} +4 -3
- package/dist/{VirtualBackground-LHYBWUT5.js.map → VirtualBackground-ZRRE4DUA.js.map} +2 -2
- package/dist/{chunk-KYYP6ZVK.js → chunk-4ISMCWQA.js} +49 -146
- package/dist/chunk-4ISMCWQA.js.map +7 -0
- package/dist/{chunk-7YUYZ64D.js → chunk-KKLZ7K2L.js} +577 -898
- package/dist/chunk-KKLZ7K2L.js.map +7 -0
- package/dist/{chunk-HCAGFNXW.js → chunk-LUND6FLY.js} +1490 -1134
- package/dist/chunk-LUND6FLY.js.map +7 -0
- package/dist/chunk-MYK3T45M.js +58 -0
- package/dist/chunk-MYK3T45M.js.map +7 -0
- package/dist/{chunk-XRJXE6UO.js → chunk-THORW2WT.js} +4 -4
- package/dist/{chunk-XRJXE6UO.js.map → chunk-THORW2WT.js.map} +1 -1
- package/dist/{conference-IDNRO4WK.js → conference-5TDUAQ6K.js} +593 -532
- package/dist/conference-5TDUAQ6K.js.map +7 -0
- package/dist/{ActiveSpeakerView-REZLWPPI.css → conference-BDCDGBIS.css} +2 -2
- package/dist/{ActiveSpeakerView-REZLWPPI.css.map → conference-BDCDGBIS.css.map} +2 -2
- package/dist/index.cjs.css +1 -1
- package/dist/index.cjs.css.map +2 -2
- package/dist/index.cjs.js +3450 -3418
- package/dist/index.cjs.js.map +4 -4
- package/dist/index.css +1 -1
- package/dist/index.css.map +2 -2
- package/dist/index.js +4 -8
- package/dist/meta.cjs.json +761 -490
- package/dist/meta.esbuild.json +857 -589
- package/dist/{transcription-BTSB7FZH.js → transcription-PYTSSAOB.js} +3 -3
- package/package.json +14 -9
- package/src/Accordion/Accordion.tsx +3 -3
- package/src/AudioLevel/AudioLevel.tsx +1 -1
- package/src/Avatar/Avatar.tsx +8 -3
- package/src/Button/Button.tsx +76 -20
- package/src/Checkbox/Checkbox.tsx +4 -4
- package/src/Collapsible/Collapsible.tsx +1 -1
- package/src/Divider/Divider.tsx +2 -2
- package/src/Divider/HorizontalDivider.stories.tsx +2 -2
- package/src/Divider/VerticalDivider.stories.tsx +1 -1
- package/src/Dropdown/Dropdown.stories.tsx +3 -3
- package/src/Dropdown/Dropdown.tsx +16 -14
- package/src/IconButton/IconButton.tsx +8 -7
- package/src/Input/Input.tsx +9 -8
- package/src/Input/PasswordInput.stories.tsx +2 -2
- package/src/Label/Label.tsx +1 -1
- package/src/Link/Link.tsx +4 -4
- package/src/Loading/Loading.tsx +7 -10
- package/src/Modal/Dialog.stories.tsx +2 -2
- package/src/Modal/DialogContent.tsx +3 -3
- package/src/Pagination/StyledPagination.tsx +4 -4
- package/src/Popover/Popover.stories.tsx +5 -5
- package/src/Popover/index.tsx +1 -1
- package/src/Prebuilt/App.jsx +101 -68
- package/src/Prebuilt/IconButton.jsx +2 -2
- package/src/Prebuilt/Prebuilt.stories.tsx +8 -2
- package/src/Prebuilt/common/constants.js +0 -1
- package/src/Prebuilt/common/utils.js +0 -6
- package/src/Prebuilt/components/AppData/AppData.jsx +7 -4
- package/src/Prebuilt/components/AppData/useUISettings.js +0 -4
- package/src/Prebuilt/components/AudioVideoToggle.jsx +73 -20
- package/src/Prebuilt/components/BottomActionSheet/BottomActionSheet.jsx +1 -1
- package/src/Prebuilt/components/Chat/Chat.jsx +6 -2
- package/src/Prebuilt/components/Chat/ChatBody.jsx +13 -11
- package/src/Prebuilt/components/Chat/ChatFooter.jsx +2 -2
- package/src/Prebuilt/components/Chat/ChatHeader.jsx +3 -3
- package/src/Prebuilt/components/Chat/ChatSelector.jsx +2 -2
- package/src/Prebuilt/components/Chat/useEmojiPickerStyles.js +6 -6
- package/src/Prebuilt/components/Chip.jsx +24 -0
- package/src/Prebuilt/components/Connection/ConnectionIndicator.jsx +6 -6
- package/src/Prebuilt/components/Connection/TileConnection.jsx +2 -2
- package/src/Prebuilt/components/Connection/connectionQualityUtils.js +4 -4
- package/src/Prebuilt/components/EmojiReaction.jsx +13 -10
- package/src/Prebuilt/components/ErrorBoundary.jsx +2 -2
- package/src/Prebuilt/components/FullPageProgress.jsx +5 -3
- package/src/Prebuilt/components/GoLiveButton.jsx +1 -4
- package/src/Prebuilt/components/HMSVideo/HLSQualitySelector.jsx +2 -2
- package/src/Prebuilt/components/HMSVideo/PlayButton.jsx +1 -1
- package/src/Prebuilt/components/HMSVideo/VideoProgress.jsx +3 -3
- package/src/Prebuilt/components/HMSVideo/VideoTime.jsx +3 -1
- package/src/Prebuilt/components/HMSVideo/VolumeControl.jsx +1 -1
- package/src/Prebuilt/components/Header/AdditionalRoomState.jsx +17 -17
- package/src/Prebuilt/components/Header/AmbientMusic.jsx +1 -1
- package/src/Prebuilt/components/Header/ConferencingHeader.jsx +4 -6
- package/src/Prebuilt/components/Header/HeaderComponents.jsx +10 -5
- package/src/Prebuilt/components/Header/ParticipantFilter.jsx +2 -2
- package/src/Prebuilt/components/Header/ParticipantList.jsx +2 -2
- package/src/Prebuilt/components/Header/StreamActions.jsx +9 -19
- package/src/Prebuilt/components/Header/StreamingHeader.jsx +5 -6
- package/src/Prebuilt/components/HlsStatsOverlay.jsx +2 -2
- package/src/Prebuilt/components/IconButtonWithOptions/IconButtonWithOptions.jsx +102 -0
- package/src/Prebuilt/components/IconButtonWithOptions/IconButtonWithOptions.stories.tsx +40 -0
- package/src/Prebuilt/components/LeaveRoom.jsx +11 -11
- package/src/Prebuilt/components/MetaActions.jsx +2 -2
- package/src/Prebuilt/components/MoreSettings/BulkRoleChangeModal.jsx +2 -2
- package/src/Prebuilt/components/MoreSettings/ChangeSelfRole.jsx +1 -1
- package/src/Prebuilt/components/MoreSettings/MoreSettings.jsx +1 -0
- package/src/Prebuilt/components/Notifications/HLSFailureModal.jsx +69 -0
- package/src/Prebuilt/components/Notifications/Notifications.jsx +1 -3
- package/src/Prebuilt/components/Notifications/PermissionErrorModal.jsx +108 -26
- package/src/Prebuilt/components/Notifications/ReconnectNotifications.jsx +1 -1
- package/src/Prebuilt/components/PIP/pipUtils.js +2 -2
- package/src/Prebuilt/components/Playlist/Playlist.jsx +4 -4
- package/src/Prebuilt/components/Playlist/PlaylistControls.jsx +3 -3
- package/src/Prebuilt/components/Playlist/PlaylistItem.jsx +3 -3
- package/src/Prebuilt/components/Playlist/VideoPlayer.jsx +4 -4
- package/src/Prebuilt/components/PostLeave.jsx +4 -4
- package/src/Prebuilt/components/Preview/PreviewContainer.jsx +17 -6
- package/src/Prebuilt/components/Preview/PreviewForm.jsx +74 -0
- package/src/Prebuilt/components/Preview/PreviewJoin.jsx +100 -37
- package/src/Prebuilt/components/RoleChangeModal.jsx +3 -3
- package/src/Prebuilt/components/ScreenshareDisplay.jsx +2 -2
- package/src/Prebuilt/components/Settings/DeviceSettings.jsx +3 -9
- package/src/Prebuilt/components/Settings/SettingsModal.jsx +8 -32
- package/src/Prebuilt/components/Settings/StartRecording.jsx +4 -12
- package/src/Prebuilt/components/Settings/SwitchWithLabel.jsx +2 -3
- package/src/Prebuilt/components/Settings/common.js +26 -0
- package/src/Prebuilt/components/StatsForNerds.jsx +5 -5
- package/src/Prebuilt/components/Streaming/Common.jsx +11 -11
- package/src/Prebuilt/components/Streaming/HLSStreaming.jsx +6 -12
- package/src/Prebuilt/components/Streaming/RTMPStreaming.jsx +4 -6
- package/src/Prebuilt/components/Streaming/StreamingLanding.jsx +4 -4
- package/src/Prebuilt/components/TileMenu.jsx +7 -7
- package/src/Prebuilt/components/Toast/ToastConfig.jsx +12 -20
- package/src/Prebuilt/components/conference.jsx +9 -2
- package/src/Prebuilt/components/hooks/useDropdownSelection.jsx +1 -4
- package/src/Prebuilt/components/pdfAnnotator/pdfErrorView.jsx +2 -2
- package/src/Prebuilt/components/pdfAnnotator/pdfFileOptions.jsx +1 -1
- package/src/Prebuilt/components/pdfAnnotator/pdfHeader.jsx +1 -1
- package/src/Prebuilt/components/pdfAnnotator/pdfInfo.jsx +2 -2
- package/src/Prebuilt/components/pdfAnnotator/shareScreenOptions.jsx +12 -20
- package/src/Prebuilt/components/pdfAnnotator/uploadedFile.jsx +4 -4
- package/src/Prebuilt/images/Logo.svg +8 -0
- package/src/Prebuilt/images/first_person.png +0 -0
- package/src/Prebuilt/images/rtmp.png +0 -0
- package/src/Prebuilt/index.d.ts +6 -1
- package/src/Prebuilt/layouts/HLSView.jsx +1 -1
- package/src/Prebuilt/layouts/InsetView.jsx +0 -3
- package/src/Prebuilt/layouts/NonPublisherView.jsx +2 -2
- package/src/Prebuilt/layouts/SidePane.jsx +1 -1
- package/src/Prebuilt/layouts/WaitingView.jsx +2 -2
- package/src/Prebuilt/layouts/mainView.jsx +42 -5
- package/src/Prebuilt/plugins/FlyingEmoji.jsx +2 -2
- package/src/Prebuilt/plugins/VirtualBackground/VirtualBackground.jsx +1 -0
- package/src/Prebuilt/plugins/whiteboard/ToggleWhiteboard.jsx +1 -3
- package/src/Prebuilt/primitives/DialogContent.jsx +4 -4
- package/src/Prebuilt/primitives/DropdownTrigger.jsx +3 -3
- package/src/Prebuilt/provider/roomLayoutProvider/constants/index.ts +33 -0
- package/src/Prebuilt/provider/roomLayoutProvider/hooks/useFetchRoomLayout.ts +57 -0
- package/src/Prebuilt/provider/roomLayoutProvider/index.tsx +26 -0
- package/src/Progress/index.tsx +2 -2
- package/src/RadioGroup/RadioGroup.tsx +3 -3
- package/src/ReactSelect/ReactSelect.stories.tsx +7 -7
- package/src/ReactSelect/ReactSelect.tsx +8 -8
- package/src/Select/Select.tsx +6 -6
- package/src/Slider/Slider.tsx +5 -5
- package/src/Stats/Stats.tsx +12 -2
- package/src/Stats/StyledStats.tsx +3 -3
- package/src/Switch/Switch.tsx +5 -5
- package/src/Tabs/Tabs.stories.tsx +2 -2
- package/src/Tabs/Tabs.tsx +2 -2
- package/src/Text/Text.tsx +2 -2
- package/src/Theme/ThemeProvider.tsx +4 -7
- package/src/Theme/ThemeStory.jsx +17 -19
- package/src/Theme/base.config.ts +31 -59
- package/src/Theme/index.tsx +0 -1
- package/src/Theme/stitches.config.ts +2 -7
- package/src/TileMenu/StyledMenuTile.tsx +11 -8
- package/src/Toast/Toast.tsx +10 -9
- package/src/Tooltip/Tooltip.stories.tsx +1 -1
- package/src/Tooltip/Tooltip.tsx +4 -4
- package/src/Video/Video.tsx +1 -1
- package/src/VideoTile/StyledVideoTile.tsx +12 -12
- package/src/assets/android-perm-0.png +0 -0
- package/src/assets/android-perm-1.png +0 -0
- package/src/assets/ios-perm-0.png +0 -0
- package/src/fixtures/chats.ts +1 -1
- package/dist/HLSView-3RDXRV7Y.js.map +0 -7
- package/dist/Theme/themes.d.ts +0 -64
- package/dist/chunk-7YUYZ64D.js.map +0 -7
- package/dist/chunk-HCAGFNXW.js.map +0 -7
- package/dist/chunk-KYYP6ZVK.js.map +0 -7
- package/dist/chunk-ULXGBUSC.js +0 -65
- package/dist/chunk-ULXGBUSC.js.map +0 -7
- package/dist/conference-IDNRO4WK.js.map +0 -7
- package/src/Prebuilt/components/Preview/PreviewName.jsx +0 -37
- package/src/Prebuilt/components/Streaming/RTMPIcon.jsx +0 -24
- package/src/Prebuilt/hms.js +0 -7
- package/src/Prebuilt/plugins/confetti.jsx +0 -60
- package/src/Theme/themes.ts +0 -70
- /package/dist/{ActiveSpeakerView-H3VYXANB.js.map → ActiveSpeakerView-4XPIRZOK.js.map} +0 -0
- /package/dist/{PinnedTrackView-453PELNU.js.map → PinnedTrackView-GGTCNH5V.js.map} +0 -0
- /package/dist/{transcription-BTSB7FZH.js.map → transcription-PYTSSAOB.js.map} +0 -0
|
@@ -6,7 +6,7 @@ import {
|
|
|
6
6
|
VideoList_default,
|
|
7
7
|
VideoTile_default,
|
|
8
8
|
useAppConfig
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-KKLZ7K2L.js";
|
|
10
10
|
import {
|
|
11
11
|
AudioVideoToggle,
|
|
12
12
|
Button,
|
|
@@ -39,6 +39,7 @@ import {
|
|
|
39
39
|
Slider,
|
|
40
40
|
StreamActions,
|
|
41
41
|
Switch,
|
|
42
|
+
ThemeTypes,
|
|
42
43
|
ToastManager,
|
|
43
44
|
UserPreferencesKeys,
|
|
44
45
|
Video,
|
|
@@ -58,6 +59,7 @@ import {
|
|
|
58
59
|
useNavigation,
|
|
59
60
|
usePDFAnnotator,
|
|
60
61
|
usePinnedTrack,
|
|
62
|
+
useRoomLayout,
|
|
61
63
|
useSetAppDataByKey,
|
|
62
64
|
useSetUiSettings,
|
|
63
65
|
useSidepaneToggle,
|
|
@@ -68,17 +70,17 @@ import {
|
|
|
68
70
|
useUserPreferences,
|
|
69
71
|
useWaitingViewerRole,
|
|
70
72
|
useWhiteboardMetadata
|
|
71
|
-
} from "./chunk-
|
|
73
|
+
} from "./chunk-LUND6FLY.js";
|
|
72
74
|
import {
|
|
73
75
|
Loading,
|
|
74
76
|
useIsFeatureEnabled,
|
|
75
77
|
useRolePreference
|
|
76
|
-
} from "./chunk-
|
|
78
|
+
} from "./chunk-MYK3T45M.js";
|
|
77
79
|
import {
|
|
78
80
|
Box,
|
|
79
81
|
Flex,
|
|
80
82
|
Text
|
|
81
|
-
} from "./chunk-
|
|
83
|
+
} from "./chunk-THORW2WT.js";
|
|
82
84
|
import {
|
|
83
85
|
APP_DATA,
|
|
84
86
|
DEFAULT_HLS_VIEWER_ROLE,
|
|
@@ -106,39 +108,92 @@ import {
|
|
|
106
108
|
isMacOS,
|
|
107
109
|
isSafari,
|
|
108
110
|
styled
|
|
109
|
-
} from "./chunk-
|
|
111
|
+
} from "./chunk-4ISMCWQA.js";
|
|
110
112
|
|
|
111
113
|
// src/Prebuilt/components/conference.jsx
|
|
112
114
|
init_define_process_env();
|
|
113
|
-
import
|
|
115
|
+
import React40, { useEffect as useEffect9, useRef as useRef7, useState as useState18 } from "react";
|
|
114
116
|
import { useParams } from "react-router-dom";
|
|
115
117
|
import { usePrevious } from "react-use";
|
|
116
118
|
import {
|
|
117
119
|
HMSRoomState,
|
|
118
|
-
selectAppData as
|
|
120
|
+
selectAppData as selectAppData3,
|
|
119
121
|
selectIsConnectedToRoom as selectIsConnectedToRoom2,
|
|
120
122
|
selectRoomState,
|
|
121
|
-
useHMSActions as
|
|
122
|
-
useHMSStore as
|
|
123
|
+
useHMSActions as useHMSActions16,
|
|
124
|
+
useHMSStore as useHMSStore22
|
|
123
125
|
} from "@100mslive/react-sdk";
|
|
124
126
|
|
|
127
|
+
// src/Prebuilt/components/Notifications/HLSFailureModal.jsx
|
|
128
|
+
init_define_process_env();
|
|
129
|
+
import React, { useCallback, useState } from "react";
|
|
130
|
+
import { selectHLSState, useHMSActions, useHMSStore } from "@100mslive/react-sdk";
|
|
131
|
+
function HLSFailureModal() {
|
|
132
|
+
const { hlsError } = useHMSStore(selectHLSState).error || false;
|
|
133
|
+
const [openModal, setOpenModal] = useState(!!hlsError);
|
|
134
|
+
const hmsActions = useHMSActions();
|
|
135
|
+
const [isHLSStarted, setHLSStarted] = useSetAppDataByKey(APP_DATA.hlsStarted);
|
|
136
|
+
const startHLS = useCallback(() => __async(this, null, function* () {
|
|
137
|
+
try {
|
|
138
|
+
if (isHLSStarted) {
|
|
139
|
+
return;
|
|
140
|
+
}
|
|
141
|
+
setHLSStarted(true);
|
|
142
|
+
yield hmsActions.startHLSStreaming({});
|
|
143
|
+
} catch (error) {
|
|
144
|
+
if (error.message.includes("invalid input")) {
|
|
145
|
+
yield startHLS();
|
|
146
|
+
return;
|
|
147
|
+
}
|
|
148
|
+
setHLSStarted(false);
|
|
149
|
+
}
|
|
150
|
+
}), [hmsActions, isHLSStarted, setHLSStarted]);
|
|
151
|
+
return hlsError ? /* @__PURE__ */ React.createElement(
|
|
152
|
+
Dialog.Root,
|
|
153
|
+
{
|
|
154
|
+
open: openModal,
|
|
155
|
+
onOpenChange: (value) => {
|
|
156
|
+
if (!value) {
|
|
157
|
+
setOpenModal(false);
|
|
158
|
+
}
|
|
159
|
+
}
|
|
160
|
+
},
|
|
161
|
+
/* @__PURE__ */ React.createElement(Dialog.Portal, null, /* @__PURE__ */ React.createElement(Dialog.Overlay, null), /* @__PURE__ */ React.createElement(Dialog.Content, { css: { w: "min(360px, 90%)" } }, /* @__PURE__ */ React.createElement(
|
|
162
|
+
Dialog.Title,
|
|
163
|
+
{
|
|
164
|
+
css: {
|
|
165
|
+
display: "flex",
|
|
166
|
+
alignItems: "center",
|
|
167
|
+
justifyContent: "space-between",
|
|
168
|
+
borderBottom: "1px solid $border_default",
|
|
169
|
+
mt: "$4"
|
|
170
|
+
}
|
|
171
|
+
},
|
|
172
|
+
/* @__PURE__ */ React.createElement(Text, { variant: "h6", css: { fontWeight: "$semiBold" } }, "Failed to Go Live")
|
|
173
|
+
), /* @__PURE__ */ React.createElement(Text, { variant: "sm", css: { mb: "$10", color: "$on_surface_medium" } }, "Something went wrong and your live broadcast failed. Please try again."), /* @__PURE__ */ React.createElement(Flex, { align: "center", justify: "between", css: { w: "100%", gap: "$8" } }, /* @__PURE__ */ React.createElement(Button, { outlined: true, variant: "standard", css: { w: "100%" }, onClick: () => setOpenModal(false) }, "Dismiss"), /* @__PURE__ */ React.createElement(Button, { css: { w: "100%" } }, "Go Live"))))
|
|
174
|
+
) : null;
|
|
175
|
+
}
|
|
176
|
+
|
|
125
177
|
// src/Prebuilt/layouts/mainView.jsx
|
|
126
178
|
init_define_process_env();
|
|
127
|
-
import
|
|
179
|
+
import React12, { Suspense, useCallback as useCallback5, useEffect as useEffect5 } from "react";
|
|
180
|
+
import { JoinForm_JoinBtnType } from "@100mslive/types-prebuilt/elements/join_form";
|
|
128
181
|
import {
|
|
129
182
|
selectIsConnectedToRoom,
|
|
130
183
|
selectLocalPeerRoleName as selectLocalPeerRoleName3,
|
|
131
184
|
selectPeerScreenSharing as selectPeerScreenSharing3,
|
|
132
185
|
selectPeerSharingAudio,
|
|
133
186
|
selectPeerSharingVideoPlaylist as selectPeerSharingVideoPlaylist3,
|
|
187
|
+
selectPermissions,
|
|
134
188
|
selectTemplateAppData,
|
|
135
|
-
useHMSActions as
|
|
136
|
-
useHMSStore as
|
|
189
|
+
useHMSActions as useHMSActions6,
|
|
190
|
+
useHMSStore as useHMSStore10,
|
|
191
|
+
useRecordingStreaming
|
|
137
192
|
} from "@100mslive/react-sdk";
|
|
138
193
|
|
|
139
194
|
// src/Prebuilt/layouts/EmbedView.jsx
|
|
140
195
|
init_define_process_env();
|
|
141
|
-
import
|
|
196
|
+
import React6, { useCallback as useCallback3, useEffect, useMemo as useMemo2, useRef as useRef2, useState as useState2 } from "react";
|
|
142
197
|
import { useMedia as useMedia2 } from "react-use";
|
|
143
198
|
import {
|
|
144
199
|
selectLocalPeerID as selectLocalPeerID2,
|
|
@@ -146,13 +201,13 @@ import {
|
|
|
146
201
|
selectPeers as selectPeers2,
|
|
147
202
|
selectPeerScreenSharing as selectPeerScreenSharing2,
|
|
148
203
|
throwErrorHandler,
|
|
149
|
-
useHMSStore as
|
|
204
|
+
useHMSStore as useHMSStore6,
|
|
150
205
|
useScreenShare
|
|
151
206
|
} from "@100mslive/react-sdk";
|
|
152
207
|
|
|
153
208
|
// src/Prebuilt/layouts/screenShareView.jsx
|
|
154
209
|
init_define_process_env();
|
|
155
|
-
import
|
|
210
|
+
import React5, { Fragment, useCallback as useCallback2, useMemo } from "react";
|
|
156
211
|
import { useMedia } from "react-use";
|
|
157
212
|
import {
|
|
158
213
|
selectLocalPeerID,
|
|
@@ -161,26 +216,26 @@ import {
|
|
|
161
216
|
selectPeerScreenSharing,
|
|
162
217
|
selectPeerSharingVideoPlaylist as selectPeerSharingVideoPlaylist2,
|
|
163
218
|
selectScreenShareByPeerID,
|
|
164
|
-
useHMSStore as
|
|
219
|
+
useHMSStore as useHMSStore5
|
|
165
220
|
} from "@100mslive/react-sdk";
|
|
166
221
|
|
|
167
222
|
// src/Prebuilt/components/Playlist/VideoPlayer.jsx
|
|
168
223
|
init_define_process_env();
|
|
169
|
-
import
|
|
224
|
+
import React3, { useRef } from "react";
|
|
170
225
|
import { useFullscreen, useToggle } from "react-use";
|
|
171
226
|
import screenfull from "screenfull";
|
|
172
227
|
import {
|
|
173
228
|
selectVideoPlaylist as selectVideoPlaylist3,
|
|
174
229
|
selectVideoPlaylistAudioTrackByPeerID as selectVideoPlaylistAudioTrackByPeerID2,
|
|
175
230
|
selectVideoPlaylistVideoTrackByPeerID,
|
|
176
|
-
useHMSActions as
|
|
177
|
-
useHMSStore as
|
|
231
|
+
useHMSActions as useHMSActions4,
|
|
232
|
+
useHMSStore as useHMSStore4
|
|
178
233
|
} from "@100mslive/react-sdk";
|
|
179
234
|
import { CrossIcon, ExpandIcon, ShrinkIcon } from "@100mslive/react-icons";
|
|
180
235
|
|
|
181
236
|
// src/Prebuilt/components/Playlist/PlaylistControls.jsx
|
|
182
237
|
init_define_process_env();
|
|
183
|
-
import
|
|
238
|
+
import React2 from "react";
|
|
184
239
|
import {
|
|
185
240
|
HMSPlaylistType as HMSPlaylistType2,
|
|
186
241
|
selectAudioPlaylist as selectAudioPlaylist2,
|
|
@@ -188,8 +243,8 @@ import {
|
|
|
188
243
|
selectPeerSharingVideoPlaylist,
|
|
189
244
|
selectVideoPlaylist as selectVideoPlaylist2,
|
|
190
245
|
selectVideoPlaylistAudioTrackByPeerID,
|
|
191
|
-
useHMSActions as
|
|
192
|
-
useHMSStore as
|
|
246
|
+
useHMSActions as useHMSActions3,
|
|
247
|
+
useHMSStore as useHMSStore3
|
|
193
248
|
} from "@100mslive/react-sdk";
|
|
194
249
|
import { NextIcon, PauseIcon, PlayIcon, PlaylistIcon, PrevIcon, SpeakerIcon } from "@100mslive/react-icons";
|
|
195
250
|
|
|
@@ -199,16 +254,16 @@ import {
|
|
|
199
254
|
HMSPlaylistType,
|
|
200
255
|
selectAudioPlaylist,
|
|
201
256
|
selectVideoPlaylist,
|
|
202
|
-
useHMSActions,
|
|
203
|
-
useHMSStore
|
|
257
|
+
useHMSActions as useHMSActions2,
|
|
258
|
+
useHMSStore as useHMSStore2
|
|
204
259
|
} from "@100mslive/react-sdk";
|
|
205
260
|
var usePlaylist = (type) => {
|
|
206
261
|
const isAudioPlaylist = type === HMSPlaylistType.audio;
|
|
207
262
|
const selector = isAudioPlaylist ? selectAudioPlaylist : selectVideoPlaylist;
|
|
208
|
-
const active =
|
|
209
|
-
const selection =
|
|
210
|
-
const playlist =
|
|
211
|
-
const hmsActions =
|
|
263
|
+
const active = useHMSStore2(selector.selectedItem);
|
|
264
|
+
const selection = useHMSStore2(selector.selection);
|
|
265
|
+
const playlist = useHMSStore2(selector.list);
|
|
266
|
+
const hmsActions = useHMSActions2();
|
|
212
267
|
const playlistAction = isAudioPlaylist ? hmsActions.audioPlaylist : hmsActions.videoPlaylist;
|
|
213
268
|
return {
|
|
214
269
|
active,
|
|
@@ -222,13 +277,13 @@ var usePlaylist = (type) => {
|
|
|
222
277
|
// src/Prebuilt/components/Playlist/PlaylistControls.jsx
|
|
223
278
|
var Progress = ({ type, duration }) => {
|
|
224
279
|
const selectPlaylist = type === HMSPlaylistType2.audio ? selectAudioPlaylist2 : selectVideoPlaylist2;
|
|
225
|
-
const progress =
|
|
226
|
-
const hmsActions =
|
|
280
|
+
const progress = useHMSStore3(selectPlaylist.progress);
|
|
281
|
+
const hmsActions = useHMSActions3();
|
|
227
282
|
const playlistAction = type === HMSPlaylistType2.audio ? hmsActions.audioPlaylist : hmsActions.videoPlaylist;
|
|
228
283
|
if (!duration) {
|
|
229
284
|
return null;
|
|
230
285
|
}
|
|
231
|
-
return /* @__PURE__ */
|
|
286
|
+
return /* @__PURE__ */ React2.createElement(
|
|
232
287
|
Slider,
|
|
233
288
|
{
|
|
234
289
|
step: 1,
|
|
@@ -243,18 +298,18 @@ var PlaylistActive = ({ type, onToggle }) => {
|
|
|
243
298
|
var _a, _b;
|
|
244
299
|
const isAudioPlaylist = type === HMSPlaylistType2.audio;
|
|
245
300
|
const selector = isAudioPlaylist ? selectAudioPlaylist2 : selectVideoPlaylist2;
|
|
246
|
-
const active =
|
|
301
|
+
const active = useHMSStore3(selector.selectedItem);
|
|
247
302
|
if (!active) {
|
|
248
303
|
return null;
|
|
249
304
|
}
|
|
250
|
-
return /* @__PURE__ */
|
|
305
|
+
return /* @__PURE__ */ React2.createElement(Box, { css: { mt: "$8" } }, /* @__PURE__ */ React2.createElement(Flex, { justify: "between", css: { w: "100%" } }, /* @__PURE__ */ React2.createElement(Box, null, /* @__PURE__ */ React2.createElement(Text, { variant: "md" }, active.name), ((_a = active.metadata) == null ? void 0 : _a.description) && /* @__PURE__ */ React2.createElement(Text, { variant: "xs" }, (_b = active.metadata) == null ? void 0 : _b.description)), /* @__PURE__ */ React2.createElement(IconButton, { onClick: onToggle, css: { alignSelf: "center" }, "data-testid": "playlist_collapse_btn" }, /* @__PURE__ */ React2.createElement(PlaylistIcon, null))));
|
|
251
306
|
};
|
|
252
307
|
var Controls = ({ type, css = {} }) => {
|
|
253
308
|
const { active, hasNext, hasPrevious, actions } = usePlaylist(type);
|
|
254
309
|
if (!active) {
|
|
255
310
|
return null;
|
|
256
311
|
}
|
|
257
|
-
return /* @__PURE__ */
|
|
312
|
+
return /* @__PURE__ */ React2.createElement(Flex, { justify: "center", css }, /* @__PURE__ */ React2.createElement(
|
|
258
313
|
IconButton,
|
|
259
314
|
{
|
|
260
315
|
disabled: !hasPrevious,
|
|
@@ -263,8 +318,8 @@ var Controls = ({ type, css = {} }) => {
|
|
|
263
318
|
},
|
|
264
319
|
"data-testid": "playlist_prev_btn"
|
|
265
320
|
},
|
|
266
|
-
/* @__PURE__ */
|
|
267
|
-
), /* @__PURE__ */
|
|
321
|
+
/* @__PURE__ */ React2.createElement(PrevIcon, null)
|
|
322
|
+
), /* @__PURE__ */ React2.createElement(
|
|
268
323
|
IconButton,
|
|
269
324
|
{
|
|
270
325
|
onClick: () => {
|
|
@@ -272,8 +327,8 @@ var Controls = ({ type, css = {} }) => {
|
|
|
272
327
|
},
|
|
273
328
|
"data-testid": "playlist_play_pause_btn"
|
|
274
329
|
},
|
|
275
|
-
active.playing ? /* @__PURE__ */
|
|
276
|
-
), /* @__PURE__ */
|
|
330
|
+
active.playing ? /* @__PURE__ */ React2.createElement(PauseIcon, { width: 32, height: 32 }) : /* @__PURE__ */ React2.createElement(PlayIcon, { width: 32, height: 32 })
|
|
331
|
+
), /* @__PURE__ */ React2.createElement(
|
|
277
332
|
IconButton,
|
|
278
333
|
{
|
|
279
334
|
disabled: !hasNext,
|
|
@@ -282,18 +337,18 @@ var Controls = ({ type, css = {} }) => {
|
|
|
282
337
|
},
|
|
283
338
|
"data-testid": "playlist_next_btn"
|
|
284
339
|
},
|
|
285
|
-
/* @__PURE__ */
|
|
340
|
+
/* @__PURE__ */ React2.createElement(NextIcon, null)
|
|
286
341
|
));
|
|
287
342
|
};
|
|
288
343
|
var VolumeControl = () => {
|
|
289
|
-
const hmsActions =
|
|
290
|
-
const volume =
|
|
291
|
-
const active =
|
|
292
|
-
const peerSharingPlaylist =
|
|
293
|
-
const audioTrack =
|
|
294
|
-
const audioTrackVolume =
|
|
344
|
+
const hmsActions = useHMSActions3();
|
|
345
|
+
const volume = useHMSStore3(selectVideoPlaylist2.volume);
|
|
346
|
+
const active = useHMSStore3(selectVideoPlaylist2.selectedItem);
|
|
347
|
+
const peerSharingPlaylist = useHMSStore3(selectPeerSharingVideoPlaylist);
|
|
348
|
+
const audioTrack = useHMSStore3(selectVideoPlaylistAudioTrackByPeerID(peerSharingPlaylist == null ? void 0 : peerSharingPlaylist.id));
|
|
349
|
+
const audioTrackVolume = useHMSStore3(selectAudioTrackVolume(audioTrack == null ? void 0 : audioTrack.id));
|
|
295
350
|
const sliderVolume = active ? volume : audioTrackVolume;
|
|
296
|
-
return /* @__PURE__ */
|
|
351
|
+
return /* @__PURE__ */ React2.createElement(Flex, { align: "center", css: { color: "$on_primary_high" } }, /* @__PURE__ */ React2.createElement(SpeakerIcon, null), /* @__PURE__ */ React2.createElement(
|
|
297
352
|
Slider,
|
|
298
353
|
{
|
|
299
354
|
css: { mx: "$4", w: "$20" },
|
|
@@ -318,23 +373,23 @@ var AudioPlaylistControls = ({ onToggle }) => {
|
|
|
318
373
|
if (!active) {
|
|
319
374
|
return null;
|
|
320
375
|
}
|
|
321
|
-
return /* @__PURE__ */
|
|
376
|
+
return /* @__PURE__ */ React2.createElement(
|
|
322
377
|
Box,
|
|
323
378
|
{
|
|
324
379
|
css: {
|
|
325
380
|
p: "$8",
|
|
326
|
-
borderTop: "1px solid $
|
|
327
|
-
bg: "$
|
|
381
|
+
borderTop: "1px solid $border_bright",
|
|
382
|
+
bg: "$surface_default"
|
|
328
383
|
}
|
|
329
384
|
},
|
|
330
|
-
/* @__PURE__ */
|
|
331
|
-
/* @__PURE__ */
|
|
332
|
-
/* @__PURE__ */
|
|
385
|
+
/* @__PURE__ */ React2.createElement(Controls, { type: HMSPlaylistType2.audio }),
|
|
386
|
+
/* @__PURE__ */ React2.createElement(Progress, { type: HMSPlaylistType2.audio, duration: active.duration }),
|
|
387
|
+
/* @__PURE__ */ React2.createElement(PlaylistActive, { type: HMSPlaylistType2.audio, onToggle })
|
|
333
388
|
);
|
|
334
389
|
};
|
|
335
390
|
var VideoPlaylistControls = ({ children }) => {
|
|
336
391
|
const { active } = usePlaylist(HMSPlaylistType2.video);
|
|
337
|
-
return /* @__PURE__ */
|
|
392
|
+
return /* @__PURE__ */ React2.createElement(
|
|
338
393
|
Box,
|
|
339
394
|
{
|
|
340
395
|
css: {
|
|
@@ -348,51 +403,51 @@ var VideoPlaylistControls = ({ children }) => {
|
|
|
348
403
|
}
|
|
349
404
|
}
|
|
350
405
|
},
|
|
351
|
-
active && /* @__PURE__ */
|
|
352
|
-
/* @__PURE__ */
|
|
406
|
+
active && /* @__PURE__ */ React2.createElement(Progress, { type: HMSPlaylistType2.video, duration: active.duration }),
|
|
407
|
+
/* @__PURE__ */ React2.createElement(Flex, { align: "center", justify: "between" }, /* @__PURE__ */ React2.createElement(VolumeControl, null), active && /* @__PURE__ */ React2.createElement(Controls, { css: { flex: "1 1 0" } }), children)
|
|
353
408
|
);
|
|
354
409
|
};
|
|
355
410
|
|
|
356
411
|
// src/Prebuilt/components/Playlist/VideoPlayer.jsx
|
|
357
|
-
var VideoPlayer =
|
|
358
|
-
const videoTrack =
|
|
359
|
-
const audioTrack =
|
|
360
|
-
const active =
|
|
412
|
+
var VideoPlayer = React3.memo(({ peerId }) => {
|
|
413
|
+
const videoTrack = useHMSStore4(selectVideoPlaylistVideoTrackByPeerID(peerId));
|
|
414
|
+
const audioTrack = useHMSStore4(selectVideoPlaylistAudioTrackByPeerID2(peerId));
|
|
415
|
+
const active = useHMSStore4(selectVideoPlaylist3.selectedItem);
|
|
361
416
|
const isAudioOnly = useUISettings(UI_SETTINGS.isAudioOnly);
|
|
362
|
-
const hmsActions =
|
|
417
|
+
const hmsActions = useHMSActions4();
|
|
363
418
|
const ref = useRef(null);
|
|
364
419
|
const [show, toggle] = useToggle(false);
|
|
365
420
|
const isFullscreen = useFullscreen(ref, show, {
|
|
366
421
|
onClose: () => toggle(false)
|
|
367
422
|
});
|
|
368
423
|
const showStatsOnTiles = useUISettings(UI_SETTINGS.showStatsOnTiles);
|
|
369
|
-
return /* @__PURE__ */
|
|
424
|
+
return /* @__PURE__ */ React3.createElement(Flex, { direction: "column", justify: "center", css: { w: "100%", h: "100%" }, ref }, active && /* @__PURE__ */ React3.createElement(
|
|
370
425
|
Flex,
|
|
371
426
|
{
|
|
372
427
|
justify: "between",
|
|
373
428
|
align: "center",
|
|
374
429
|
css: {
|
|
375
|
-
bg: "$
|
|
430
|
+
bg: "$surface_default",
|
|
376
431
|
p: "$2 $2 $2 $6",
|
|
377
432
|
borderTopLeftRadius: "$1",
|
|
378
433
|
borderTopRightRadius: "$1"
|
|
379
434
|
}
|
|
380
435
|
},
|
|
381
|
-
/* @__PURE__ */
|
|
382
|
-
/* @__PURE__ */
|
|
436
|
+
/* @__PURE__ */ React3.createElement(Text, { css: { color: "$on_primary_high" } }, active.name),
|
|
437
|
+
/* @__PURE__ */ React3.createElement(
|
|
383
438
|
IconButton,
|
|
384
439
|
{
|
|
385
440
|
css: {
|
|
386
|
-
color: "$
|
|
441
|
+
color: "$on_primary_high"
|
|
387
442
|
},
|
|
388
443
|
onClick: () => {
|
|
389
444
|
hmsActions.videoPlaylist.stop();
|
|
390
445
|
},
|
|
391
446
|
"data-testid": "videoplaylist_cross_btn"
|
|
392
447
|
},
|
|
393
|
-
/* @__PURE__ */
|
|
448
|
+
/* @__PURE__ */ React3.createElement(CrossIcon, null)
|
|
394
449
|
)
|
|
395
|
-
), showStatsOnTiles ? /* @__PURE__ */
|
|
450
|
+
), showStatsOnTiles ? /* @__PURE__ */ React3.createElement(Box, { css: { "& > div": { top: "$14", left: "$8" } } }, /* @__PURE__ */ React3.createElement(
|
|
396
451
|
VideoTileStats,
|
|
397
452
|
{
|
|
398
453
|
audioTrackID: audioTrack == null ? void 0 : audioTrack.id,
|
|
@@ -400,7 +455,7 @@ var VideoPlayer = React2.memo(({ peerId }) => {
|
|
|
400
455
|
peerID: peerId,
|
|
401
456
|
isLocal: active
|
|
402
457
|
}
|
|
403
|
-
)) : null, /* @__PURE__ */
|
|
458
|
+
)) : null, /* @__PURE__ */ React3.createElement(
|
|
404
459
|
Video,
|
|
405
460
|
{
|
|
406
461
|
trackId: videoTrack == null ? void 0 : videoTrack.id,
|
|
@@ -413,29 +468,29 @@ var VideoPlayer = React2.memo(({ peerId }) => {
|
|
|
413
468
|
borderTopRightRadius: 0
|
|
414
469
|
}
|
|
415
470
|
}
|
|
416
|
-
), /* @__PURE__ */
|
|
471
|
+
), /* @__PURE__ */ React3.createElement(VideoPlaylistControls, null, screenfull.enabled && /* @__PURE__ */ React3.createElement(
|
|
417
472
|
IconButton,
|
|
418
473
|
{
|
|
419
474
|
onClick: () => toggle(),
|
|
420
475
|
css: {
|
|
421
|
-
color: "$
|
|
476
|
+
color: "$on_primary_high",
|
|
422
477
|
height: "max-content",
|
|
423
478
|
alignSelf: "center",
|
|
424
479
|
cursor: "pointer"
|
|
425
480
|
}
|
|
426
481
|
},
|
|
427
|
-
isFullscreen ? /* @__PURE__ */
|
|
482
|
+
isFullscreen ? /* @__PURE__ */ React3.createElement(ShrinkIcon, null) : /* @__PURE__ */ React3.createElement(ExpandIcon, null)
|
|
428
483
|
)));
|
|
429
484
|
});
|
|
430
485
|
|
|
431
486
|
// src/Prebuilt/components/ScreenshareDisplay.jsx
|
|
432
487
|
init_define_process_env();
|
|
433
|
-
import
|
|
434
|
-
import { useHMSActions as
|
|
488
|
+
import React4 from "react";
|
|
489
|
+
import { useHMSActions as useHMSActions5 } from "@100mslive/react-sdk";
|
|
435
490
|
import { CrossIcon as CrossIcon2, ShareScreenIcon } from "@100mslive/react-icons";
|
|
436
491
|
var ScreenshareDisplay = () => {
|
|
437
|
-
const hmsActions =
|
|
438
|
-
return /* @__PURE__ */
|
|
492
|
+
const hmsActions = useHMSActions5();
|
|
493
|
+
return /* @__PURE__ */ React4.createElement(
|
|
439
494
|
Flex,
|
|
440
495
|
{
|
|
441
496
|
direction: "column",
|
|
@@ -449,14 +504,14 @@ var ScreenshareDisplay = () => {
|
|
|
449
504
|
h: "100%",
|
|
450
505
|
r: "$3",
|
|
451
506
|
m: "0 auto",
|
|
452
|
-
color: "$
|
|
453
|
-
bg: "$
|
|
507
|
+
color: "$on_surface_high",
|
|
508
|
+
bg: "$surface_default",
|
|
454
509
|
textAlign: "center"
|
|
455
510
|
}
|
|
456
511
|
},
|
|
457
|
-
/* @__PURE__ */
|
|
458
|
-
/* @__PURE__ */
|
|
459
|
-
/* @__PURE__ */
|
|
512
|
+
/* @__PURE__ */ React4.createElement(ShareScreenIcon, { width: 48, height: 48 }),
|
|
513
|
+
/* @__PURE__ */ React4.createElement(Text, { variant: "h5", css: { m: "$8 0" } }, "You are sharing your screen"),
|
|
514
|
+
/* @__PURE__ */ React4.createElement(
|
|
460
515
|
Button,
|
|
461
516
|
{
|
|
462
517
|
variant: "danger",
|
|
@@ -465,7 +520,7 @@ var ScreenshareDisplay = () => {
|
|
|
465
520
|
}),
|
|
466
521
|
"data-testid": "stop_screen_share_btn"
|
|
467
522
|
},
|
|
468
|
-
/* @__PURE__ */
|
|
523
|
+
/* @__PURE__ */ React4.createElement(CrossIcon2, { width: 18, height: 18 }),
|
|
469
524
|
"\xA0 Stop screen share"
|
|
470
525
|
)
|
|
471
526
|
);
|
|
@@ -476,11 +531,11 @@ var ScreenShareView = () => {
|
|
|
476
531
|
var _a;
|
|
477
532
|
const mediaQueryLg = config.media.xl;
|
|
478
533
|
const showSidebarInBottom = useMedia(mediaQueryLg);
|
|
479
|
-
const peers =
|
|
480
|
-
const localPeerID =
|
|
481
|
-
const localPeerRole =
|
|
482
|
-
const peerPresenting =
|
|
483
|
-
const peerSharingPlaylist =
|
|
534
|
+
const peers = useHMSStore5(selectPeers);
|
|
535
|
+
const localPeerID = useHMSStore5(selectLocalPeerID);
|
|
536
|
+
const localPeerRole = useHMSStore5(selectLocalPeerRoleName);
|
|
537
|
+
const peerPresenting = useHMSStore5(selectPeerScreenSharing);
|
|
538
|
+
const peerSharingPlaylist = useHMSStore5(selectPeerSharingVideoPlaylist2);
|
|
484
539
|
const isPresenterFromMyRole = ((_a = peerPresenting == null ? void 0 : peerPresenting.roleName) == null ? void 0 : _a.toLowerCase()) === (localPeerRole == null ? void 0 : localPeerRole.toLowerCase());
|
|
485
540
|
const amIPresenting = localPeerID === (peerPresenting == null ? void 0 : peerPresenting.id);
|
|
486
541
|
const showPresenterInSmallTile = showSidebarInBottom || amIPresenting || isPresenterFromMyRole;
|
|
@@ -491,7 +546,7 @@ var ScreenShareView = () => {
|
|
|
491
546
|
}
|
|
492
547
|
return smallTilePeers2;
|
|
493
548
|
}, [peers, peerPresenting, showPresenterInSmallTile]);
|
|
494
|
-
return /* @__PURE__ */
|
|
549
|
+
return /* @__PURE__ */ React5.createElement(
|
|
495
550
|
Flex,
|
|
496
551
|
{
|
|
497
552
|
css: {
|
|
@@ -499,7 +554,7 @@ var ScreenShareView = () => {
|
|
|
499
554
|
},
|
|
500
555
|
direction: showSidebarInBottom ? "column" : "row"
|
|
501
556
|
},
|
|
502
|
-
/* @__PURE__ */
|
|
557
|
+
/* @__PURE__ */ React5.createElement(
|
|
503
558
|
ScreenShareComponent,
|
|
504
559
|
{
|
|
505
560
|
amIPresenting,
|
|
@@ -507,7 +562,7 @@ var ScreenShareView = () => {
|
|
|
507
562
|
peerSharingPlaylist
|
|
508
563
|
}
|
|
509
564
|
),
|
|
510
|
-
/* @__PURE__ */
|
|
565
|
+
/* @__PURE__ */ React5.createElement(
|
|
511
566
|
Flex,
|
|
512
567
|
{
|
|
513
568
|
direction: { "@initial": "column", "@lg": "row" },
|
|
@@ -520,7 +575,7 @@ var ScreenShareView = () => {
|
|
|
520
575
|
}
|
|
521
576
|
}
|
|
522
577
|
},
|
|
523
|
-
/* @__PURE__ */
|
|
578
|
+
/* @__PURE__ */ React5.createElement(
|
|
524
579
|
SidePane,
|
|
525
580
|
{
|
|
526
581
|
showSidebarInBottom,
|
|
@@ -540,11 +595,11 @@ var SidePane = ({
|
|
|
540
595
|
smallTilePeers,
|
|
541
596
|
showSidebarInBottom
|
|
542
597
|
}) => {
|
|
543
|
-
const shouldShowScreenFn =
|
|
598
|
+
const shouldShowScreenFn = useCallback2(
|
|
544
599
|
(peer) => peerScreenSharing && peer.id !== peerScreenSharing.id,
|
|
545
600
|
[peerScreenSharing]
|
|
546
601
|
);
|
|
547
|
-
return /* @__PURE__ */
|
|
602
|
+
return /* @__PURE__ */ React5.createElement(Fragment, null, !isPresenterInSmallTiles && /* @__PURE__ */ React5.createElement(LargeTilePeerView, { peerScreenSharing }), /* @__PURE__ */ React5.createElement(
|
|
548
603
|
SmallTilePeersView,
|
|
549
604
|
{
|
|
550
605
|
showSidebarInBottom,
|
|
@@ -554,9 +609,9 @@ var SidePane = ({
|
|
|
554
609
|
));
|
|
555
610
|
};
|
|
556
611
|
var ScreenShareComponent = ({ amIPresenting, peerPresenting, peerSharingPlaylist }) => {
|
|
557
|
-
const screenshareTrack =
|
|
612
|
+
const screenshareTrack = useHMSStore5(selectScreenShareByPeerID(peerPresenting == null ? void 0 : peerPresenting.id));
|
|
558
613
|
if (peerSharingPlaylist) {
|
|
559
|
-
return /* @__PURE__ */
|
|
614
|
+
return /* @__PURE__ */ React5.createElement(
|
|
560
615
|
Box,
|
|
561
616
|
{
|
|
562
617
|
css: {
|
|
@@ -569,10 +624,10 @@ var ScreenShareComponent = ({ amIPresenting, peerPresenting, peerSharingPlaylist
|
|
|
569
624
|
}
|
|
570
625
|
}
|
|
571
626
|
},
|
|
572
|
-
/* @__PURE__ */
|
|
627
|
+
/* @__PURE__ */ React5.createElement(VideoPlayer, { peerId: peerSharingPlaylist.id })
|
|
573
628
|
);
|
|
574
629
|
}
|
|
575
|
-
return /* @__PURE__ */
|
|
630
|
+
return /* @__PURE__ */ React5.createElement(
|
|
576
631
|
Box,
|
|
577
632
|
{
|
|
578
633
|
css: {
|
|
@@ -581,18 +636,18 @@ var ScreenShareComponent = ({ amIPresenting, peerPresenting, peerSharingPlaylist
|
|
|
581
636
|
"@xl": { ml: "$4", maxHeight: "80%", minHeight: 0 }
|
|
582
637
|
}
|
|
583
638
|
},
|
|
584
|
-
peerPresenting && (amIPresenting && !["browser", "window", "application"].includes(screenshareTrack == null ? void 0 : screenshareTrack.displaySurface) ? /* @__PURE__ */
|
|
639
|
+
peerPresenting && (amIPresenting && !["browser", "window", "application"].includes(screenshareTrack == null ? void 0 : screenshareTrack.displaySurface) ? /* @__PURE__ */ React5.createElement(Box, { css: { objectFit: "contain", h: "100%" } }, /* @__PURE__ */ React5.createElement(ScreenshareDisplay, null)) : /* @__PURE__ */ React5.createElement(ScreenshareTile_default, { peerId: peerPresenting == null ? void 0 : peerPresenting.id }))
|
|
585
640
|
);
|
|
586
641
|
};
|
|
587
642
|
var SmallTilePeersView = ({ smallTilePeers, shouldShowScreenFn, showSidebarInBottom }) => {
|
|
588
|
-
return /* @__PURE__ */
|
|
643
|
+
return /* @__PURE__ */ React5.createElement(
|
|
589
644
|
Flex,
|
|
590
645
|
{
|
|
591
646
|
css: {
|
|
592
647
|
flex: "2 1 0"
|
|
593
648
|
}
|
|
594
649
|
},
|
|
595
|
-
smallTilePeers && smallTilePeers.length > 0 && /* @__PURE__ */
|
|
650
|
+
smallTilePeers && smallTilePeers.length > 0 && /* @__PURE__ */ React5.createElement(
|
|
596
651
|
VideoList_default,
|
|
597
652
|
{
|
|
598
653
|
peers: smallTilePeers,
|
|
@@ -604,7 +659,7 @@ var SmallTilePeersView = ({ smallTilePeers, shouldShowScreenFn, showSidebarInBot
|
|
|
604
659
|
);
|
|
605
660
|
};
|
|
606
661
|
var LargeTilePeerView = ({ peerScreenSharing, showStatsOnTiles }) => {
|
|
607
|
-
return peerScreenSharing ? /* @__PURE__ */
|
|
662
|
+
return peerScreenSharing ? /* @__PURE__ */ React5.createElement(
|
|
608
663
|
Box,
|
|
609
664
|
{
|
|
610
665
|
css: {
|
|
@@ -623,23 +678,23 @@ var LargeTilePeerView = ({ peerScreenSharing, showStatsOnTiles }) => {
|
|
|
623
678
|
}
|
|
624
679
|
}
|
|
625
680
|
},
|
|
626
|
-
/* @__PURE__ */
|
|
681
|
+
/* @__PURE__ */ React5.createElement(VideoTile_default, { showStatsOnTiles, width: "100%", height: "100%", peerId: peerScreenSharing.id })
|
|
627
682
|
) : null;
|
|
628
683
|
};
|
|
629
684
|
var screenShareView_default = ScreenShareView;
|
|
630
685
|
|
|
631
686
|
// src/Prebuilt/layouts/EmbedView.jsx
|
|
632
687
|
var EmbedView = () => {
|
|
633
|
-
return /* @__PURE__ */
|
|
688
|
+
return /* @__PURE__ */ React6.createElement(EmbebScreenShareView, null, /* @__PURE__ */ React6.createElement(EmbedComponent, null));
|
|
634
689
|
};
|
|
635
690
|
var EmbebScreenShareView = ({ children }) => {
|
|
636
691
|
var _a;
|
|
637
|
-
const peers =
|
|
692
|
+
const peers = useHMSStore6(selectPeers2);
|
|
638
693
|
const mediaQueryLg = config.media.xl;
|
|
639
694
|
const showSidebarInBottom = useMedia2(mediaQueryLg);
|
|
640
|
-
const localPeerID =
|
|
641
|
-
const localPeerRole =
|
|
642
|
-
const peerPresenting =
|
|
695
|
+
const localPeerID = useHMSStore6(selectLocalPeerID2);
|
|
696
|
+
const localPeerRole = useHMSStore6(selectLocalPeerRoleName2);
|
|
697
|
+
const peerPresenting = useHMSStore6(selectPeerScreenSharing2);
|
|
643
698
|
const isPresenterFromMyRole = ((_a = peerPresenting == null ? void 0 : peerPresenting.roleName) == null ? void 0 : _a.toLowerCase()) === (localPeerRole == null ? void 0 : localPeerRole.toLowerCase());
|
|
644
699
|
const amIPresenting = localPeerID === (peerPresenting == null ? void 0 : peerPresenting.id);
|
|
645
700
|
const showPresenterInSmallTile = showSidebarInBottom || amIPresenting || isPresenterFromMyRole;
|
|
@@ -650,7 +705,7 @@ var EmbebScreenShareView = ({ children }) => {
|
|
|
650
705
|
}
|
|
651
706
|
return smallTilePeers2;
|
|
652
707
|
}, [peers, peerPresenting, showPresenterInSmallTile]);
|
|
653
|
-
return /* @__PURE__ */
|
|
708
|
+
return /* @__PURE__ */ React6.createElement(Flex, { css: { size: "100%" }, direction: showSidebarInBottom ? "column" : "row" }, children, /* @__PURE__ */ React6.createElement(
|
|
654
709
|
Flex,
|
|
655
710
|
{
|
|
656
711
|
direction: { "@initial": "column", "@lg": "row" },
|
|
@@ -663,7 +718,7 @@ var EmbebScreenShareView = ({ children }) => {
|
|
|
663
718
|
}
|
|
664
719
|
}
|
|
665
720
|
},
|
|
666
|
-
/* @__PURE__ */
|
|
721
|
+
/* @__PURE__ */ React6.createElement(
|
|
667
722
|
SidePane,
|
|
668
723
|
{
|
|
669
724
|
showSidebarInBottom,
|
|
@@ -678,11 +733,11 @@ var EmbebScreenShareView = ({ children }) => {
|
|
|
678
733
|
var EmbedComponent = () => {
|
|
679
734
|
const { amIScreenSharing, toggleScreenShare } = useScreenShare(throwErrorHandler);
|
|
680
735
|
const [embedConfig, setEmbedConfig] = useSetAppDataByKey(APP_DATA.embedConfig);
|
|
681
|
-
const [wasScreenShared, setWasScreenShared] =
|
|
736
|
+
const [wasScreenShared, setWasScreenShared] = useState2(false);
|
|
682
737
|
const screenShareAttemptInProgress = useRef2(false);
|
|
683
738
|
const src = embedConfig.url;
|
|
684
739
|
const iframeRef = useRef2();
|
|
685
|
-
const resetEmbedConfig =
|
|
740
|
+
const resetEmbedConfig = useCallback3(() => {
|
|
686
741
|
if (src) {
|
|
687
742
|
setEmbedConfig({ url: "" });
|
|
688
743
|
}
|
|
@@ -711,7 +766,7 @@ var EmbedComponent = () => {
|
|
|
711
766
|
}
|
|
712
767
|
};
|
|
713
768
|
}, [wasScreenShared, amIScreenSharing, resetEmbedConfig, toggleScreenShare]);
|
|
714
|
-
return /* @__PURE__ */
|
|
769
|
+
return /* @__PURE__ */ React6.createElement(
|
|
715
770
|
Box,
|
|
716
771
|
{
|
|
717
772
|
ref: iframeRef,
|
|
@@ -725,7 +780,7 @@ var EmbedComponent = () => {
|
|
|
725
780
|
}
|
|
726
781
|
}
|
|
727
782
|
},
|
|
728
|
-
/* @__PURE__ */
|
|
783
|
+
/* @__PURE__ */ React6.createElement(
|
|
729
784
|
"iframe",
|
|
730
785
|
{
|
|
731
786
|
src,
|
|
@@ -740,10 +795,10 @@ var EmbedComponent = () => {
|
|
|
740
795
|
|
|
741
796
|
// src/Prebuilt/layouts/InsetView.jsx
|
|
742
797
|
init_define_process_env();
|
|
743
|
-
import
|
|
798
|
+
import React7, { Fragment as Fragment2, useEffect as useEffect2, useRef as useRef3 } from "react";
|
|
744
799
|
import Draggable from "react-draggable";
|
|
745
800
|
import { useMedia as useMedia3 } from "react-use";
|
|
746
|
-
import { selectAppData, selectLocalPeer, selectRemotePeers, selectRolesMap, useHMSStore as
|
|
801
|
+
import { selectAppData, selectLocalPeer, selectRemotePeers, selectRolesMap, useHMSStore as useHMSStore7 } from "@100mslive/react-sdk";
|
|
747
802
|
var getAspectRatio = ({ roleMap, roleName, isMobile }) => {
|
|
748
803
|
const role = roleMap[roleName];
|
|
749
804
|
const { width, height } = role.publishParams.video;
|
|
@@ -751,11 +806,11 @@ var getAspectRatio = ({ roleMap, roleName, isMobile }) => {
|
|
|
751
806
|
};
|
|
752
807
|
function InsetView() {
|
|
753
808
|
var _a;
|
|
754
|
-
const remotePeers =
|
|
755
|
-
const localPeer =
|
|
809
|
+
const remotePeers = useHMSStore7(selectRemotePeers);
|
|
810
|
+
const localPeer = useHMSStore7(selectLocalPeer);
|
|
756
811
|
const isMobile = useMedia3(config.media.md);
|
|
757
812
|
const isLandscape = useMedia3(config.media.ls);
|
|
758
|
-
const roleMap =
|
|
813
|
+
const roleMap = useHMSStore7(selectRolesMap);
|
|
759
814
|
const rolePreference = useRolePreference();
|
|
760
815
|
let centerPeers = [];
|
|
761
816
|
let sidepanePeers = [];
|
|
@@ -776,7 +831,7 @@ function InsetView() {
|
|
|
776
831
|
centerPeers = remotePeers;
|
|
777
832
|
}
|
|
778
833
|
const hideInset = sidepanePeers.length > 0 && (isMobile || isLandscape);
|
|
779
|
-
return /* @__PURE__ */
|
|
834
|
+
return /* @__PURE__ */ React7.createElement(Fragment2, null, /* @__PURE__ */ React7.createElement(
|
|
780
835
|
Box,
|
|
781
836
|
{
|
|
782
837
|
css: {
|
|
@@ -792,7 +847,7 @@ function InsetView() {
|
|
|
792
847
|
}
|
|
793
848
|
}
|
|
794
849
|
},
|
|
795
|
-
/* @__PURE__ */
|
|
850
|
+
/* @__PURE__ */ React7.createElement(
|
|
796
851
|
Flex,
|
|
797
852
|
{
|
|
798
853
|
align: "center",
|
|
@@ -808,7 +863,7 @@ function InsetView() {
|
|
|
808
863
|
"@ls": { flexFlow: "row" }
|
|
809
864
|
}
|
|
810
865
|
},
|
|
811
|
-
centerPeers.length > 0 ? centerPeers.map((peer) => /* @__PURE__ */
|
|
866
|
+
centerPeers.length > 0 ? centerPeers.map((peer) => /* @__PURE__ */ React7.createElement(
|
|
812
867
|
VideoTile_default,
|
|
813
868
|
{
|
|
814
869
|
key: peer.videoTrack || peer.id,
|
|
@@ -836,9 +891,9 @@ function InsetView() {
|
|
|
836
891
|
},
|
|
837
892
|
objectFit: "contain"
|
|
838
893
|
}
|
|
839
|
-
)) : /* @__PURE__ */
|
|
894
|
+
)) : /* @__PURE__ */ React7.createElement(FirstPersonDisplay, null)
|
|
840
895
|
),
|
|
841
|
-
sidepanePeers.length > 0 && /* @__PURE__ */
|
|
896
|
+
sidepanePeers.length > 0 && /* @__PURE__ */ React7.createElement(
|
|
842
897
|
Flex,
|
|
843
898
|
{
|
|
844
899
|
align: "center",
|
|
@@ -850,7 +905,7 @@ function InsetView() {
|
|
|
850
905
|
placeContent: "center"
|
|
851
906
|
}
|
|
852
907
|
},
|
|
853
|
-
(hideInset ? [...sidepanePeers, localPeer] : sidepanePeers).map((peer, _, arr) => /* @__PURE__ */
|
|
908
|
+
(hideInset ? [...sidepanePeers, localPeer] : sidepanePeers).map((peer, _, arr) => /* @__PURE__ */ React7.createElement(
|
|
854
909
|
VideoTile_default,
|
|
855
910
|
{
|
|
856
911
|
key: peer.videoTrack || peer.id,
|
|
@@ -880,11 +935,11 @@ function InsetView() {
|
|
|
880
935
|
}
|
|
881
936
|
))
|
|
882
937
|
)
|
|
883
|
-
), !hideInset && /* @__PURE__ */
|
|
938
|
+
), !hideInset && /* @__PURE__ */ React7.createElement(InsetTile, { roleMap, isMobile, isLandscape }));
|
|
884
939
|
}
|
|
885
940
|
var InsetTile = ({ isMobile, roleMap, isLandscape }) => {
|
|
886
|
-
const localPeer =
|
|
887
|
-
const sidepane =
|
|
941
|
+
const localPeer = useHMSStore7(selectLocalPeer);
|
|
942
|
+
const sidepane = useHMSStore7(selectAppData(APP_DATA.sidePane));
|
|
888
943
|
const aspectRatio = getAspectRatio({
|
|
889
944
|
roleMap,
|
|
890
945
|
roleName: localPeer.roleName,
|
|
@@ -915,7 +970,7 @@ var InsetTile = ({ isMobile, roleMap, isLandscape }) => {
|
|
|
915
970
|
resizeObserver == null ? void 0 : resizeObserver.disconnect();
|
|
916
971
|
};
|
|
917
972
|
}, []);
|
|
918
|
-
return /* @__PURE__ */
|
|
973
|
+
return /* @__PURE__ */ React7.createElement(Draggable, { bounds: "parent", nodeRef }, /* @__PURE__ */ React7.createElement(
|
|
919
974
|
Box,
|
|
920
975
|
{
|
|
921
976
|
ref: nodeRef,
|
|
@@ -930,7 +985,7 @@ var InsetTile = ({ isMobile, roleMap, isLandscape }) => {
|
|
|
930
985
|
h: height
|
|
931
986
|
}
|
|
932
987
|
},
|
|
933
|
-
/* @__PURE__ */
|
|
988
|
+
/* @__PURE__ */ React7.createElement(
|
|
934
989
|
VideoTile_default,
|
|
935
990
|
{
|
|
936
991
|
peerId: localPeer.id,
|
|
@@ -939,9 +994,6 @@ var InsetTile = ({ isMobile, roleMap, isLandscape }) => {
|
|
|
939
994
|
size: "100%",
|
|
940
995
|
padding: 0
|
|
941
996
|
},
|
|
942
|
-
containerCSS: {
|
|
943
|
-
bg: "$surfaceDefault"
|
|
944
|
-
},
|
|
945
997
|
width,
|
|
946
998
|
height
|
|
947
999
|
}
|
|
@@ -951,22 +1003,22 @@ var InsetTile = ({ isMobile, roleMap, isLandscape }) => {
|
|
|
951
1003
|
|
|
952
1004
|
// src/Prebuilt/layouts/mainGridView.jsx
|
|
953
1005
|
init_define_process_env();
|
|
954
|
-
import
|
|
1006
|
+
import React9, { useEffect as useEffect3, useState as useState3 } from "react";
|
|
955
1007
|
import {
|
|
956
1008
|
selectLocalPeerID as selectLocalPeerID3,
|
|
957
1009
|
selectLocalPeerRole,
|
|
958
1010
|
selectPeers as selectPeers3,
|
|
959
1011
|
selectPeersByRoles,
|
|
960
1012
|
selectRolesMap as selectRolesMap2,
|
|
961
|
-
useHMSStore as
|
|
1013
|
+
useHMSStore as useHMSStore9
|
|
962
1014
|
} from "@100mslive/react-sdk";
|
|
963
1015
|
|
|
964
1016
|
// src/Prebuilt/layouts/NonPublisherView.jsx
|
|
965
1017
|
init_define_process_env();
|
|
966
|
-
import
|
|
1018
|
+
import React8 from "react";
|
|
967
1019
|
import { ShieldAlertIcon } from "@100mslive/react-icons";
|
|
968
|
-
var NonPublisherView =
|
|
969
|
-
return /* @__PURE__ */
|
|
1020
|
+
var NonPublisherView = React8.memo(({ message }) => {
|
|
1021
|
+
return /* @__PURE__ */ React8.createElement(
|
|
970
1022
|
Box,
|
|
971
1023
|
{
|
|
972
1024
|
css: {
|
|
@@ -975,12 +1027,12 @@ var NonPublisherView = React7.memo(({ message }) => {
|
|
|
975
1027
|
maxWidth: "96%",
|
|
976
1028
|
h: "100%",
|
|
977
1029
|
m: "auto",
|
|
978
|
-
background: "$
|
|
1030
|
+
background: "$surface_default",
|
|
979
1031
|
borderRadius: "$3"
|
|
980
1032
|
},
|
|
981
1033
|
"data-testid": "non_publisher_view"
|
|
982
1034
|
},
|
|
983
|
-
/* @__PURE__ */
|
|
1035
|
+
/* @__PURE__ */ React8.createElement(
|
|
984
1036
|
Flex,
|
|
985
1037
|
{
|
|
986
1038
|
align: "center",
|
|
@@ -994,8 +1046,8 @@ var NonPublisherView = React7.memo(({ message }) => {
|
|
|
994
1046
|
gap: "$8"
|
|
995
1047
|
}
|
|
996
1048
|
},
|
|
997
|
-
/* @__PURE__ */
|
|
998
|
-
/* @__PURE__ */
|
|
1049
|
+
/* @__PURE__ */ React8.createElement(ShieldAlertIcon, { color: "#C3D0E5", width: "80px", height: "80px" }),
|
|
1050
|
+
/* @__PURE__ */ React8.createElement(
|
|
999
1051
|
Flex,
|
|
1000
1052
|
{
|
|
1001
1053
|
direction: "column",
|
|
@@ -1005,8 +1057,8 @@ var NonPublisherView = React7.memo(({ message }) => {
|
|
|
1005
1057
|
gap: "$4"
|
|
1006
1058
|
}
|
|
1007
1059
|
},
|
|
1008
|
-
/* @__PURE__ */
|
|
1009
|
-
/* @__PURE__ */
|
|
1060
|
+
/* @__PURE__ */ React8.createElement(Text, { color: "white", variant: "h6", css: { "@md": { fontSize: "$md" } } }, message),
|
|
1061
|
+
/* @__PURE__ */ React8.createElement(Text, { color: "$on_surface_medium", css: { mt: "$4", "@md": { fontSize: "$sm" } } }, "Please go to dashboard and reconfigure role settings or contact the role admin.")
|
|
1010
1062
|
)
|
|
1011
1063
|
)
|
|
1012
1064
|
);
|
|
@@ -1014,9 +1066,9 @@ var NonPublisherView = React7.memo(({ message }) => {
|
|
|
1014
1066
|
|
|
1015
1067
|
// src/Prebuilt/components/AppData/useAppLayout.js
|
|
1016
1068
|
init_define_process_env();
|
|
1017
|
-
import { selectAppDataByPath, useHMSStore as
|
|
1069
|
+
import { selectAppDataByPath, useHMSStore as useHMSStore8 } from "@100mslive/react-sdk";
|
|
1018
1070
|
var useAppLayout = (path) => {
|
|
1019
|
-
return
|
|
1071
|
+
return useHMSStore8(selectAppDataByPath(APP_DATA.appLayout, path));
|
|
1020
1072
|
};
|
|
1021
1073
|
|
|
1022
1074
|
// src/Prebuilt/layouts/mainGridView.jsx
|
|
@@ -1025,14 +1077,14 @@ var MainGridView = () => {
|
|
|
1025
1077
|
const centerRoles = useAppLayout("center") || [];
|
|
1026
1078
|
const sidepaneRoles = useAppLayout("sidepane") || [];
|
|
1027
1079
|
const maxTileCount = useUISettings(UI_SETTINGS.maxTileCount);
|
|
1028
|
-
const peers =
|
|
1029
|
-
const roles =
|
|
1030
|
-
const localPeerId =
|
|
1080
|
+
const peers = useHMSStore9(selectPeers3);
|
|
1081
|
+
const roles = useHMSStore9(selectRolesMap2);
|
|
1082
|
+
const localPeerId = useHMSStore9(selectLocalPeerID3);
|
|
1031
1083
|
const centerPeers = peers.filter((peer) => centerRoles.includes(peer.roleName));
|
|
1032
1084
|
const sidebarPeers = peers.filter((peer) => sidepaneRoles.includes(peer.roleName));
|
|
1033
|
-
const localRole =
|
|
1034
|
-
const peersByRoles =
|
|
1035
|
-
const [placeholder, setPlaceholder] =
|
|
1085
|
+
const localRole = useHMSStore9(selectLocalPeerRole);
|
|
1086
|
+
const peersByRoles = useHMSStore9(selectPeersByRoles(localRole.subscribeParams.subscribeToRoles || []));
|
|
1087
|
+
const [placeholder, setPlaceholder] = useState3("");
|
|
1036
1088
|
useEffect3(() => {
|
|
1037
1089
|
var _a2;
|
|
1038
1090
|
const hasPublishingPeers = peers.some((peer) => {
|
|
@@ -1065,7 +1117,7 @@ var MainGridView = () => {
|
|
|
1065
1117
|
const nooneIsPublishing = sidebarPeers.length === 0;
|
|
1066
1118
|
showSidePane = itsOnlyMeInTheRoom || nooneIsPublishing;
|
|
1067
1119
|
}
|
|
1068
|
-
return /* @__PURE__ */
|
|
1120
|
+
return /* @__PURE__ */ React9.createElement(
|
|
1069
1121
|
Flex,
|
|
1070
1122
|
{
|
|
1071
1123
|
css: {
|
|
@@ -1076,7 +1128,7 @@ var MainGridView = () => {
|
|
|
1076
1128
|
"@md": "column"
|
|
1077
1129
|
}
|
|
1078
1130
|
},
|
|
1079
|
-
placeholder ? /* @__PURE__ */
|
|
1131
|
+
placeholder ? /* @__PURE__ */ React9.createElement(NonPublisherView, { message: placeholder }) : /* @__PURE__ */ React9.createElement(React9.Fragment, null, /* @__PURE__ */ React9.createElement(
|
|
1080
1132
|
GridCenterView,
|
|
1081
1133
|
{
|
|
1082
1134
|
peers: showSidePane ? centerPeers : peers,
|
|
@@ -1085,38 +1137,38 @@ var MainGridView = () => {
|
|
|
1085
1137
|
hideSidePane: !showSidePane,
|
|
1086
1138
|
totalPeers: peers.length
|
|
1087
1139
|
}
|
|
1088
|
-
), showSidePane && /* @__PURE__ */
|
|
1140
|
+
), showSidePane && /* @__PURE__ */ React9.createElement(GridSidePaneView, { peers: sidebarPeers, totalPeers: peers.length }))
|
|
1089
1141
|
);
|
|
1090
1142
|
};
|
|
1091
1143
|
|
|
1092
1144
|
// src/Prebuilt/layouts/PDFView.jsx
|
|
1093
1145
|
init_define_process_env();
|
|
1094
|
-
import
|
|
1146
|
+
import React10, { useCallback as useCallback4, useEffect as useEffect4, useRef as useRef4, useState as useState4 } from "react";
|
|
1095
1147
|
import { throwErrorHandler as throwErrorHandler2, useScreenShare as useScreenShare2 } from "@100mslive/react-sdk";
|
|
1096
1148
|
var PDFView = () => {
|
|
1097
|
-
return /* @__PURE__ */
|
|
1149
|
+
return /* @__PURE__ */ React10.createElement(EmbebScreenShareView, null, /* @__PURE__ */ React10.createElement(PDFEmbedComponent, null));
|
|
1098
1150
|
};
|
|
1099
1151
|
var PDFEmbedComponent = () => {
|
|
1100
1152
|
const ref = useRef4();
|
|
1101
1153
|
const themeType = useTheme().themeType;
|
|
1102
|
-
const [isPDFLoaded, setIsPDFLoaded] =
|
|
1154
|
+
const [isPDFLoaded, setIsPDFLoaded] = useState4(false);
|
|
1103
1155
|
let pdfJSURL = define_process_env_default.REACT_APP_PDFJS_IFRAME_URL;
|
|
1104
1156
|
const { amIScreenSharing, toggleScreenShare } = useScreenShare2(throwErrorHandler2);
|
|
1105
1157
|
const [pdfConfig, setPDFConfig] = useSetAppDataByKey(APP_DATA.pdfConfig);
|
|
1106
1158
|
if (pdfConfig.url && !pdfConfig.file) {
|
|
1107
1159
|
pdfJSURL = pdfJSURL + "?file=" + encodeURIComponent(pdfConfig.url);
|
|
1108
1160
|
}
|
|
1109
|
-
const [wasScreenShared, setWasScreenShared] =
|
|
1161
|
+
const [wasScreenShared, setWasScreenShared] = useState4(false);
|
|
1110
1162
|
const screenShareAttemptInProgress = useRef4(false);
|
|
1111
1163
|
const iframeRef = useRef4();
|
|
1112
|
-
const resetEmbedConfig =
|
|
1164
|
+
const resetEmbedConfig = useCallback4(() => {
|
|
1113
1165
|
setPDFConfig({ state: false });
|
|
1114
1166
|
}, [setPDFConfig]);
|
|
1115
1167
|
useEffect4(() => {
|
|
1116
1168
|
if (isPDFLoaded && ref.current) {
|
|
1117
1169
|
ref.current.contentWindow.postMessage(
|
|
1118
1170
|
{
|
|
1119
|
-
theme: themeType ===
|
|
1171
|
+
theme: themeType === ThemeTypes.dark ? 2 : 1
|
|
1120
1172
|
},
|
|
1121
1173
|
"*"
|
|
1122
1174
|
);
|
|
@@ -1147,7 +1199,7 @@ var PDFEmbedComponent = () => {
|
|
|
1147
1199
|
}
|
|
1148
1200
|
};
|
|
1149
1201
|
}, [wasScreenShared, amIScreenSharing, resetEmbedConfig, toggleScreenShare]);
|
|
1150
|
-
return /* @__PURE__ */
|
|
1202
|
+
return /* @__PURE__ */ React10.createElement(
|
|
1151
1203
|
Box,
|
|
1152
1204
|
{
|
|
1153
1205
|
ref: iframeRef,
|
|
@@ -1161,7 +1213,7 @@ var PDFEmbedComponent = () => {
|
|
|
1161
1213
|
}
|
|
1162
1214
|
}
|
|
1163
1215
|
},
|
|
1164
|
-
/* @__PURE__ */
|
|
1216
|
+
/* @__PURE__ */ React10.createElement(
|
|
1165
1217
|
"iframe",
|
|
1166
1218
|
{
|
|
1167
1219
|
src: pdfJSURL,
|
|
@@ -1181,7 +1233,7 @@ var PDFEmbedComponent = () => {
|
|
|
1181
1233
|
ref.current.contentWindow.postMessage(
|
|
1182
1234
|
{
|
|
1183
1235
|
file: pdfConfig.file,
|
|
1184
|
-
theme: themeType ===
|
|
1236
|
+
theme: themeType === ThemeTypes.dark ? 2 : 1
|
|
1185
1237
|
},
|
|
1186
1238
|
"*"
|
|
1187
1239
|
);
|
|
@@ -1196,10 +1248,10 @@ var PDFEmbedComponent = () => {
|
|
|
1196
1248
|
|
|
1197
1249
|
// src/Prebuilt/layouts/WaitingView.jsx
|
|
1198
1250
|
init_define_process_env();
|
|
1199
|
-
import
|
|
1251
|
+
import React11 from "react";
|
|
1200
1252
|
import { ColoredTimeIcon } from "@100mslive/react-icons";
|
|
1201
|
-
var WaitingView =
|
|
1202
|
-
return /* @__PURE__ */
|
|
1253
|
+
var WaitingView = React11.memo(() => {
|
|
1254
|
+
return /* @__PURE__ */ React11.createElement(
|
|
1203
1255
|
Box,
|
|
1204
1256
|
{
|
|
1205
1257
|
css: {
|
|
@@ -1208,12 +1260,12 @@ var WaitingView = React10.memo(() => {
|
|
|
1208
1260
|
maxWidth: "96%",
|
|
1209
1261
|
h: "100%",
|
|
1210
1262
|
m: "auto",
|
|
1211
|
-
background: "$
|
|
1263
|
+
background: "$surface_default",
|
|
1212
1264
|
borderRadius: "$3"
|
|
1213
1265
|
},
|
|
1214
1266
|
"data-testid": "waiting_view"
|
|
1215
1267
|
},
|
|
1216
|
-
/* @__PURE__ */
|
|
1268
|
+
/* @__PURE__ */ React11.createElement(
|
|
1217
1269
|
Flex,
|
|
1218
1270
|
{
|
|
1219
1271
|
align: "center",
|
|
@@ -1227,8 +1279,8 @@ var WaitingView = React10.memo(() => {
|
|
|
1227
1279
|
gap: "$8"
|
|
1228
1280
|
}
|
|
1229
1281
|
},
|
|
1230
|
-
/* @__PURE__ */
|
|
1231
|
-
/* @__PURE__ */
|
|
1282
|
+
/* @__PURE__ */ React11.createElement(ColoredTimeIcon, { width: "80px", height: "80px" }),
|
|
1283
|
+
/* @__PURE__ */ React11.createElement(
|
|
1232
1284
|
Flex,
|
|
1233
1285
|
{
|
|
1234
1286
|
direction: "column",
|
|
@@ -1238,8 +1290,8 @@ var WaitingView = React10.memo(() => {
|
|
|
1238
1290
|
gap: "$4"
|
|
1239
1291
|
}
|
|
1240
1292
|
},
|
|
1241
|
-
/* @__PURE__ */
|
|
1242
|
-
/* @__PURE__ */
|
|
1293
|
+
/* @__PURE__ */ React11.createElement(Text, { color: "white", variant: "h6", css: { "@md": { fontSize: "$md" } } }, "Please wait"),
|
|
1294
|
+
/* @__PURE__ */ React11.createElement(Text, { color: "$on_surface_medium", css: { mt: "$4", "@md": { fontSize: "$sm" } } }, "Sit back and relax till others let you join.")
|
|
1243
1295
|
)
|
|
1244
1296
|
)
|
|
1245
1297
|
);
|
|
@@ -1249,26 +1301,47 @@ var WaitingView = React10.memo(() => {
|
|
|
1249
1301
|
init_define_process_env();
|
|
1250
1302
|
|
|
1251
1303
|
// src/Prebuilt/layouts/mainView.jsx
|
|
1252
|
-
var HLSView =
|
|
1253
|
-
var ActiveSpeakerView =
|
|
1254
|
-
var PinnedTrackView =
|
|
1304
|
+
var HLSView = React12.lazy(() => import("./HLSView-I26CVF5U.js"));
|
|
1305
|
+
var ActiveSpeakerView = React12.lazy(() => import("./ActiveSpeakerView-4XPIRZOK.js"));
|
|
1306
|
+
var PinnedTrackView = React12.lazy(() => import("./PinnedTrackView-GGTCNH5V.js"));
|
|
1255
1307
|
var ConferenceMainView = () => {
|
|
1256
|
-
|
|
1308
|
+
var _a, _b, _c;
|
|
1309
|
+
const localPeerRole = useHMSStore10(selectLocalPeerRoleName3);
|
|
1257
1310
|
const pinnedTrack = usePinnedTrack();
|
|
1258
|
-
const peerSharing =
|
|
1259
|
-
const peerSharingAudio =
|
|
1260
|
-
const peerSharingPlaylist =
|
|
1311
|
+
const peerSharing = useHMSStore10(selectPeerScreenSharing3);
|
|
1312
|
+
const peerSharingAudio = useHMSStore10(selectPeerSharingAudio);
|
|
1313
|
+
const peerSharingPlaylist = useHMSStore10(selectPeerSharingVideoPlaylist3);
|
|
1261
1314
|
const { whiteboardOwner: whiteboardShared } = useWhiteboardMetadata();
|
|
1262
|
-
const isConnected =
|
|
1263
|
-
const uiMode =
|
|
1264
|
-
const hmsActions =
|
|
1315
|
+
const isConnected = useHMSStore10(selectIsConnectedToRoom);
|
|
1316
|
+
const uiMode = useHMSStore10(selectTemplateAppData).uiMode;
|
|
1317
|
+
const hmsActions = useHMSActions6();
|
|
1265
1318
|
const isHeadless = useIsHeadless();
|
|
1266
1319
|
const headlessUIMode = useAppConfig("headlessConfig", "uiMode");
|
|
1267
1320
|
const { uiViewMode, isAudioOnly } = useUISettings();
|
|
1268
1321
|
const hlsViewerRole = useHLSViewerRole();
|
|
1269
1322
|
const waitingViewerRole = useWaitingViewerRole();
|
|
1270
1323
|
const urlToIframe = useUrlToEmbed();
|
|
1271
|
-
const
|
|
1324
|
+
const pdfAnnotatorActive = usePDFAnnotator();
|
|
1325
|
+
const { isHLSRunning } = useRecordingStreaming();
|
|
1326
|
+
const [isHLSStarted, setHLSStarted] = useSetAppDataByKey(APP_DATA.hlsStarted);
|
|
1327
|
+
const permissions = useHMSStore10(selectPermissions);
|
|
1328
|
+
const roomLayout = useRoomLayout();
|
|
1329
|
+
const { join_form: joinForm = {} } = ((_c = (_b = (_a = roomLayout == null ? void 0 : roomLayout.screens) == null ? void 0 : _a.preview) == null ? void 0 : _b.default) == null ? void 0 : _c.elements) || {};
|
|
1330
|
+
const startHLS = useCallback5(() => __async(void 0, null, function* () {
|
|
1331
|
+
try {
|
|
1332
|
+
if (isHLSStarted) {
|
|
1333
|
+
return;
|
|
1334
|
+
}
|
|
1335
|
+
setHLSStarted(true);
|
|
1336
|
+
yield hmsActions.startHLSStreaming({});
|
|
1337
|
+
} catch (error) {
|
|
1338
|
+
if (error.message.includes("invalid input")) {
|
|
1339
|
+
yield startHLS();
|
|
1340
|
+
return;
|
|
1341
|
+
}
|
|
1342
|
+
setHLSStarted(false);
|
|
1343
|
+
}
|
|
1344
|
+
}), [hmsActions, isHLSStarted, setHLSStarted]);
|
|
1272
1345
|
useEffect5(() => {
|
|
1273
1346
|
if (!isConnected) {
|
|
1274
1347
|
return;
|
|
@@ -1281,8 +1354,11 @@ var ConferenceMainView = () => {
|
|
|
1281
1354
|
if (audioPlaylist.length > 0) {
|
|
1282
1355
|
hmsActions.audioPlaylist.setList(audioPlaylist);
|
|
1283
1356
|
}
|
|
1357
|
+
if ((permissions == null ? void 0 : permissions.hlsStreaming) && !isHLSRunning && joinForm.join_btn_type === JoinForm_JoinBtnType.JOIN_BTN_TYPE_JOIN_AND_GO_LIVE) {
|
|
1358
|
+
startHLS();
|
|
1359
|
+
}
|
|
1284
1360
|
hmsActions.sessionStore.observe([SESSION_STORE_KEY.PINNED_MESSAGE, SESSION_STORE_KEY.SPOTLIGHT]);
|
|
1285
|
-
}, [isConnected, hmsActions]);
|
|
1361
|
+
}, [isConnected, hmsActions, permissions, joinForm]);
|
|
1286
1362
|
if (!localPeerRole) {
|
|
1287
1363
|
return null;
|
|
1288
1364
|
}
|
|
@@ -1291,7 +1367,7 @@ var ConferenceMainView = () => {
|
|
|
1291
1367
|
ViewComponent = HLSView;
|
|
1292
1368
|
} else if (localPeerRole === waitingViewerRole) {
|
|
1293
1369
|
ViewComponent = WaitingView;
|
|
1294
|
-
} else if (
|
|
1370
|
+
} else if (pdfAnnotatorActive) {
|
|
1295
1371
|
ViewComponent = PDFView;
|
|
1296
1372
|
} else if (urlToIframe) {
|
|
1297
1373
|
ViewComponent = EmbedView;
|
|
@@ -1307,7 +1383,7 @@ var ConferenceMainView = () => {
|
|
|
1307
1383
|
} else {
|
|
1308
1384
|
ViewComponent = MainGridView;
|
|
1309
1385
|
}
|
|
1310
|
-
return /* @__PURE__ */
|
|
1386
|
+
return /* @__PURE__ */ React12.createElement(Suspense, { fallback: /* @__PURE__ */ React12.createElement(FullPageProgress_default, null) }, /* @__PURE__ */ React12.createElement(
|
|
1311
1387
|
Flex,
|
|
1312
1388
|
{
|
|
1313
1389
|
css: {
|
|
@@ -1315,31 +1391,31 @@ var ConferenceMainView = () => {
|
|
|
1315
1391
|
position: "relative"
|
|
1316
1392
|
}
|
|
1317
1393
|
},
|
|
1318
|
-
/* @__PURE__ */
|
|
1319
|
-
/* @__PURE__ */
|
|
1394
|
+
/* @__PURE__ */ React12.createElement(ViewComponent, null),
|
|
1395
|
+
/* @__PURE__ */ React12.createElement(SidePane_default, null)
|
|
1320
1396
|
));
|
|
1321
1397
|
};
|
|
1322
1398
|
|
|
1323
1399
|
// src/Prebuilt/components/Footer.jsx
|
|
1324
1400
|
init_define_process_env();
|
|
1325
|
-
import
|
|
1401
|
+
import React38 from "react";
|
|
1326
1402
|
|
|
1327
1403
|
// src/Prebuilt/components/Footer/ConferencingFooter.jsx
|
|
1328
1404
|
init_define_process_env();
|
|
1329
|
-
import
|
|
1405
|
+
import React36, { Fragment as Fragment7, Suspense as Suspense2, useState as useState17 } from "react";
|
|
1330
1406
|
import { useMedia as useMedia6 } from "react-use";
|
|
1331
|
-
import { HMSPlaylistType as HMSPlaylistType4, selectIsAllowedToPublish as selectIsAllowedToPublish4, useHMSStore as
|
|
1407
|
+
import { HMSPlaylistType as HMSPlaylistType4, selectIsAllowedToPublish as selectIsAllowedToPublish4, useHMSStore as useHMSStore20, useScreenShare as useScreenShare5 } from "@100mslive/react-sdk";
|
|
1332
1408
|
import { MusicIcon } from "@100mslive/react-icons";
|
|
1333
1409
|
|
|
1334
1410
|
// src/Prebuilt/components/Playlist/Playlist.jsx
|
|
1335
1411
|
init_define_process_env();
|
|
1336
|
-
import
|
|
1337
|
-
import { HMSPlaylistType as HMSPlaylistType3, selectIsAllowedToPublish, useHMSStore as
|
|
1412
|
+
import React14, { Fragment as Fragment3, useState as useState5 } from "react";
|
|
1413
|
+
import { HMSPlaylistType as HMSPlaylistType3, selectIsAllowedToPublish, useHMSStore as useHMSStore11 } from "@100mslive/react-sdk";
|
|
1338
1414
|
import { AudioPlayerIcon, CrossIcon as CrossIcon3, VideoPlayerIcon } from "@100mslive/react-icons";
|
|
1339
1415
|
|
|
1340
1416
|
// src/Prebuilt/components/Playlist/PlaylistItem.jsx
|
|
1341
1417
|
init_define_process_env();
|
|
1342
|
-
import
|
|
1418
|
+
import React13 from "react";
|
|
1343
1419
|
function formatDuration(duration) {
|
|
1344
1420
|
if (!duration) {
|
|
1345
1421
|
return "";
|
|
@@ -1354,8 +1430,8 @@ function formatDuration(duration) {
|
|
|
1354
1430
|
}
|
|
1355
1431
|
return `${mins}:${secs}`;
|
|
1356
1432
|
}
|
|
1357
|
-
var PlaylistItem =
|
|
1358
|
-
return /* @__PURE__ */
|
|
1433
|
+
var PlaylistItem = React13.memo(({ name, metadata, duration, selected, onClick }) => {
|
|
1434
|
+
return /* @__PURE__ */ React13.createElement(
|
|
1359
1435
|
Dropdown.Item,
|
|
1360
1436
|
{
|
|
1361
1437
|
css: {
|
|
@@ -1365,22 +1441,22 @@ var PlaylistItem = React12.memo(({ name, metadata, duration, selected, onClick }
|
|
|
1365
1441
|
p: "$8",
|
|
1366
1442
|
"&:hover": {
|
|
1367
1443
|
cursor: "pointer",
|
|
1368
|
-
bg: "$
|
|
1444
|
+
bg: "$surface_default"
|
|
1369
1445
|
},
|
|
1370
1446
|
"&:focus-visible": {
|
|
1371
|
-
bg: "$
|
|
1447
|
+
bg: "$surface_default"
|
|
1372
1448
|
}
|
|
1373
1449
|
},
|
|
1374
1450
|
onClick
|
|
1375
1451
|
},
|
|
1376
|
-
/* @__PURE__ */
|
|
1377
|
-
(metadata == null ? void 0 : metadata.description) && /* @__PURE__ */
|
|
1452
|
+
/* @__PURE__ */ React13.createElement(Flex, { align: "center", justify: "between", css: { width: "100%", minHeight: 0 } }, /* @__PURE__ */ React13.createElement(Text, { variant: "md", css: { color: selected ? "$primary_default" : "$on_primary_high" } }, name), /* @__PURE__ */ React13.createElement(Text, { variant: "xs" }, formatDuration(duration))),
|
|
1453
|
+
(metadata == null ? void 0 : metadata.description) && /* @__PURE__ */ React13.createElement(Text, { variant: "xs", css: { mt: "$4" } }, metadata == null ? void 0 : metadata.description)
|
|
1378
1454
|
);
|
|
1379
1455
|
});
|
|
1380
1456
|
|
|
1381
1457
|
// src/Prebuilt/components/Playlist/Playlist.jsx
|
|
1382
1458
|
var BrowseAndPlayFromLocal = ({ type, actions }) => {
|
|
1383
|
-
return /* @__PURE__ */
|
|
1459
|
+
return /* @__PURE__ */ React14.createElement(Fragment3, null, /* @__PURE__ */ React14.createElement(Text, { as: "label", htmlFor: `${type}PlaylistBrowse`, variant: "sm", css: { cursor: "pointer", mr: "$2" } }, "Browse"), /* @__PURE__ */ React14.createElement(
|
|
1384
1460
|
"input",
|
|
1385
1461
|
{
|
|
1386
1462
|
type: "file",
|
|
@@ -1406,16 +1482,16 @@ var BrowseAndPlayFromLocal = ({ type, actions }) => {
|
|
|
1406
1482
|
var Playlist = ({ type }) => {
|
|
1407
1483
|
const isAudioPlaylist = type === HMSPlaylistType3.audio;
|
|
1408
1484
|
const { active, list: playlist, actions } = usePlaylist(type);
|
|
1409
|
-
const [open, setOpen] =
|
|
1410
|
-
const [collapse, setCollapse] =
|
|
1411
|
-
const isAllowedToPublish =
|
|
1485
|
+
const [open, setOpen] = useState5(false);
|
|
1486
|
+
const [collapse, setCollapse] = useState5(false);
|
|
1487
|
+
const isAllowedToPublish = useHMSStore11(selectIsAllowedToPublish);
|
|
1412
1488
|
const isFeatureEnabled = useIsFeatureEnabled(
|
|
1413
1489
|
isAudioPlaylist ? FEATURE_LIST.AUDIO_PLAYLIST : FEATURE_LIST.VIDEO_PLAYLIST
|
|
1414
1490
|
);
|
|
1415
1491
|
if (!isAllowedToPublish.screen || playlist.length === 0 || !isFeatureEnabled) {
|
|
1416
1492
|
return null;
|
|
1417
1493
|
}
|
|
1418
|
-
return /* @__PURE__ */
|
|
1494
|
+
return /* @__PURE__ */ React14.createElement(Fragment3, null, /* @__PURE__ */ React14.createElement(Dropdown.Root, { open, onOpenChange: setOpen }, /* @__PURE__ */ React14.createElement(Dropdown.Trigger, { asChild: true, "data-testid": type === HMSPlaylistType3.audio ? "audio_playlist" : "video_playlist" }, /* @__PURE__ */ React14.createElement(IconButton_default, { active: !active }, /* @__PURE__ */ React14.createElement(Tooltip, { title: isAudioPlaylist ? "Audio Playlist" : "Video Playlist" }, /* @__PURE__ */ React14.createElement(Box, null, isAudioPlaylist ? /* @__PURE__ */ React14.createElement(AudioPlayerIcon, null) : /* @__PURE__ */ React14.createElement(VideoPlayerIcon, null))))), /* @__PURE__ */ React14.createElement(
|
|
1419
1495
|
Dropdown.Content,
|
|
1420
1496
|
{
|
|
1421
1497
|
sideOffset: 5,
|
|
@@ -1424,23 +1500,23 @@ var Playlist = ({ type }) => {
|
|
|
1424
1500
|
maxHeight: "unset",
|
|
1425
1501
|
width: "$60",
|
|
1426
1502
|
p: "$0",
|
|
1427
|
-
bg: "$
|
|
1428
|
-
border: "1px solid $
|
|
1503
|
+
bg: "$surface_bright",
|
|
1504
|
+
border: "1px solid $border_default"
|
|
1429
1505
|
}
|
|
1430
1506
|
},
|
|
1431
|
-
/* @__PURE__ */
|
|
1507
|
+
/* @__PURE__ */ React14.createElement(
|
|
1432
1508
|
Flex,
|
|
1433
1509
|
{
|
|
1434
1510
|
align: "center",
|
|
1435
1511
|
css: {
|
|
1436
1512
|
p: "$4 $8",
|
|
1437
|
-
borderBottom: "1px solid $
|
|
1438
|
-
bg: "$
|
|
1513
|
+
borderBottom: "1px solid $border_bright",
|
|
1514
|
+
bg: "$surface_default"
|
|
1439
1515
|
}
|
|
1440
1516
|
},
|
|
1441
|
-
/* @__PURE__ */
|
|
1442
|
-
/* @__PURE__ */
|
|
1443
|
-
/* @__PURE__ */
|
|
1517
|
+
/* @__PURE__ */ React14.createElement(Text, { variant: "md", css: { flex: "1 1 0" } }, isAudioPlaylist ? "Audio Player" : "Video Playlist"),
|
|
1518
|
+
/* @__PURE__ */ React14.createElement(BrowseAndPlayFromLocal, { type, actions }),
|
|
1519
|
+
/* @__PURE__ */ React14.createElement(
|
|
1444
1520
|
IconButton_default,
|
|
1445
1521
|
{
|
|
1446
1522
|
css: { mr: "-$4" },
|
|
@@ -1452,11 +1528,11 @@ var Playlist = ({ type }) => {
|
|
|
1452
1528
|
setCollapse(false);
|
|
1453
1529
|
})
|
|
1454
1530
|
},
|
|
1455
|
-
/* @__PURE__ */
|
|
1531
|
+
/* @__PURE__ */ React14.createElement(CrossIcon3, { width: 24, height: 24 })
|
|
1456
1532
|
)
|
|
1457
1533
|
),
|
|
1458
|
-
!collapse && /* @__PURE__ */
|
|
1459
|
-
return /* @__PURE__ */
|
|
1534
|
+
!collapse && /* @__PURE__ */ React14.createElement(Box, { css: { maxHeight: "$96", overflowY: "auto" } }, playlist.map((playlistItem) => {
|
|
1535
|
+
return /* @__PURE__ */ React14.createElement(
|
|
1460
1536
|
PlaylistItem,
|
|
1461
1537
|
__spreadProps(__spreadValues({
|
|
1462
1538
|
key: playlistItem.id
|
|
@@ -1474,24 +1550,24 @@ var Playlist = ({ type }) => {
|
|
|
1474
1550
|
})
|
|
1475
1551
|
);
|
|
1476
1552
|
})),
|
|
1477
|
-
isAudioPlaylist && /* @__PURE__ */
|
|
1553
|
+
isAudioPlaylist && /* @__PURE__ */ React14.createElement(AudioPlaylistControls, { onToggle: () => setCollapse((value) => !value) })
|
|
1478
1554
|
)));
|
|
1479
1555
|
};
|
|
1480
1556
|
|
|
1481
1557
|
// src/Prebuilt/components/MoreSettings/MoreSettings.jsx
|
|
1482
1558
|
init_define_process_env();
|
|
1483
|
-
import
|
|
1559
|
+
import React23, { Fragment as Fragment4, useState as useState13 } from "react";
|
|
1484
1560
|
import { useMedia as useMedia5 } from "react-use";
|
|
1485
1561
|
import Hls from "hls.js";
|
|
1486
1562
|
import {
|
|
1487
|
-
selectAppData as
|
|
1563
|
+
selectAppData as selectAppData2,
|
|
1488
1564
|
selectIsAllowedToPublish as selectIsAllowedToPublish2,
|
|
1489
1565
|
selectLocalPeerID as selectLocalPeerID6,
|
|
1490
1566
|
selectLocalPeerRoleName as selectLocalPeerRoleName5,
|
|
1491
|
-
selectPermissions as
|
|
1492
|
-
useHMSActions as
|
|
1493
|
-
useHMSStore as
|
|
1494
|
-
useRecordingStreaming as
|
|
1567
|
+
selectPermissions as selectPermissions4,
|
|
1568
|
+
useHMSActions as useHMSActions12,
|
|
1569
|
+
useHMSStore as useHMSStore16,
|
|
1570
|
+
useRecordingStreaming as useRecordingStreaming3
|
|
1495
1571
|
} from "@100mslive/react-sdk";
|
|
1496
1572
|
import {
|
|
1497
1573
|
ChangeRoleIcon as ChangeRoleIcon2,
|
|
@@ -1506,27 +1582,20 @@ import {
|
|
|
1506
1582
|
|
|
1507
1583
|
// src/Prebuilt/components/Settings/StartRecording.jsx
|
|
1508
1584
|
init_define_process_env();
|
|
1509
|
-
import
|
|
1510
|
-
import {
|
|
1511
|
-
selectAppData as selectAppData2,
|
|
1512
|
-
selectPermissions,
|
|
1513
|
-
useHMSActions as useHMSActions6,
|
|
1514
|
-
useHMSStore as useHMSStore11,
|
|
1515
|
-
useRecordingStreaming
|
|
1516
|
-
} from "@100mslive/react-sdk";
|
|
1585
|
+
import React15, { useState as useState6 } from "react";
|
|
1586
|
+
import { selectPermissions as selectPermissions2, useHMSActions as useHMSActions7, useHMSStore as useHMSStore12, useRecordingStreaming as useRecordingStreaming2 } from "@100mslive/react-sdk";
|
|
1517
1587
|
import { AlertTriangleIcon } from "@100mslive/react-icons";
|
|
1518
1588
|
var StartRecording = ({ open, onOpenChange }) => {
|
|
1519
|
-
const permissions =
|
|
1520
|
-
const
|
|
1521
|
-
const [resolution, setResolution] = useState5(RTMP_RECORD_DEFAULT_RESOLUTION);
|
|
1589
|
+
const permissions = useHMSStore12(selectPermissions2);
|
|
1590
|
+
const [resolution, setResolution] = useState6(RTMP_RECORD_DEFAULT_RESOLUTION);
|
|
1522
1591
|
const [recordingStarted, setRecordingState] = useSetAppDataByKey(APP_DATA.recordingStarted);
|
|
1523
|
-
const { isBrowserRecordingOn, isStreamingOn, isHLSRunning } =
|
|
1524
|
-
const hmsActions =
|
|
1592
|
+
const { isBrowserRecordingOn, isStreamingOn, isHLSRunning } = useRecordingStreaming2();
|
|
1593
|
+
const hmsActions = useHMSActions7();
|
|
1525
1594
|
if (!(permissions == null ? void 0 : permissions.browserRecording) || isHLSRunning) {
|
|
1526
1595
|
return null;
|
|
1527
1596
|
}
|
|
1528
1597
|
if (isBrowserRecordingOn) {
|
|
1529
|
-
return /* @__PURE__ */
|
|
1598
|
+
return /* @__PURE__ */ React15.createElement(Dialog.Root, { open, onOpenChange }, /* @__PURE__ */ React15.createElement(Dialog.Portal, null, /* @__PURE__ */ React15.createElement(
|
|
1530
1599
|
Dialog.Content,
|
|
1531
1600
|
{
|
|
1532
1601
|
css: {
|
|
@@ -1535,9 +1604,9 @@ var StartRecording = ({ open, onOpenChange }) => {
|
|
|
1535
1604
|
bg: "#201617"
|
|
1536
1605
|
}
|
|
1537
1606
|
},
|
|
1538
|
-
/* @__PURE__ */
|
|
1539
|
-
/* @__PURE__ */
|
|
1540
|
-
/* @__PURE__ */
|
|
1607
|
+
/* @__PURE__ */ React15.createElement(Dialog.Title, null, /* @__PURE__ */ React15.createElement(Flex, { gap: 2, css: { c: "$alert_error_default" } }, /* @__PURE__ */ React15.createElement(AlertTriangleIcon, null), /* @__PURE__ */ React15.createElement(Text, { css: { c: "inherit" }, variant: "h6" }, "End Recording"))),
|
|
1608
|
+
/* @__PURE__ */ React15.createElement(Text, { variant: "sm", css: { c: "$on_surface_medium", my: "$8" } }, "Are you sure you want to end recording? You can\u2019t undo this action."),
|
|
1609
|
+
/* @__PURE__ */ React15.createElement(Flex, { justify: "end", css: { mt: "$12" } }, /* @__PURE__ */ React15.createElement(Dialog.Close, { asChild: true }, /* @__PURE__ */ React15.createElement(Button, { outlined: true, css: { borderColor: "$secondary_bright", mr: "$4" } }, "Don't end")), /* @__PURE__ */ React15.createElement(
|
|
1541
1610
|
Button,
|
|
1542
1611
|
{
|
|
1543
1612
|
"data-testid": "stop_recording_confirm_mobile",
|
|
@@ -1559,14 +1628,14 @@ var StartRecording = ({ open, onOpenChange }) => {
|
|
|
1559
1628
|
))
|
|
1560
1629
|
)));
|
|
1561
1630
|
}
|
|
1562
|
-
return /* @__PURE__ */
|
|
1631
|
+
return /* @__PURE__ */ React15.createElement(Dialog.Root, { open, onOpenChange }, /* @__PURE__ */ React15.createElement(Dialog.Content, { css: { width: "min(400px,80%)", p: "$10" } }, /* @__PURE__ */ React15.createElement(Dialog.Title, null, /* @__PURE__ */ React15.createElement(Text, { variant: "h6" }, "Start Recording")), /* @__PURE__ */ React15.createElement(
|
|
1563
1632
|
ResolutionInput,
|
|
1564
1633
|
{
|
|
1565
1634
|
testId: "recording_resolution_mobile",
|
|
1566
1635
|
css: { flexDirection: "column", alignItems: "start" },
|
|
1567
1636
|
onResolutionChange: setResolution
|
|
1568
1637
|
}
|
|
1569
|
-
), /* @__PURE__ */
|
|
1638
|
+
), /* @__PURE__ */ React15.createElement(
|
|
1570
1639
|
Button,
|
|
1571
1640
|
{
|
|
1572
1641
|
"data-testid": "start_recording_confirm_mobile",
|
|
@@ -1579,7 +1648,6 @@ var StartRecording = ({ open, onOpenChange }) => {
|
|
|
1579
1648
|
try {
|
|
1580
1649
|
setRecordingState(true);
|
|
1581
1650
|
yield hmsActions.startRTMPOrRecording({
|
|
1582
|
-
meetingURL: recordingUrl,
|
|
1583
1651
|
resolution: getResolution(resolution),
|
|
1584
1652
|
record: true
|
|
1585
1653
|
});
|
|
@@ -1607,14 +1675,14 @@ var StartRecording_default = StartRecording;
|
|
|
1607
1675
|
|
|
1608
1676
|
// src/Prebuilt/components/StatsForNerds.jsx
|
|
1609
1677
|
init_define_process_env();
|
|
1610
|
-
import
|
|
1678
|
+
import React16, { useEffect as useEffect6, useMemo as useMemo3, useRef as useRef5, useState as useState7 } from "react";
|
|
1611
1679
|
import {
|
|
1612
1680
|
selectHMSStats,
|
|
1613
1681
|
selectLocalPeerID as selectLocalPeerID4,
|
|
1614
1682
|
selectPeersMap,
|
|
1615
1683
|
selectTracksMap,
|
|
1616
1684
|
useHMSStatsStore,
|
|
1617
|
-
useHMSStore as
|
|
1685
|
+
useHMSStore as useHMSStore13
|
|
1618
1686
|
} from "@100mslive/react-sdk";
|
|
1619
1687
|
var StatsForNerds = ({ onOpenChange }) => {
|
|
1620
1688
|
var _a;
|
|
@@ -1623,9 +1691,9 @@ var StatsForNerds = ({ onOpenChange }) => {
|
|
|
1623
1691
|
() => [{ id: "local-peer", label: "Local Peer Stats" }, ...tracksWithLabels],
|
|
1624
1692
|
[tracksWithLabels]
|
|
1625
1693
|
);
|
|
1626
|
-
const [selectedStat, setSelectedStat] =
|
|
1694
|
+
const [selectedStat, setSelectedStat] = useState7(statsOptions[0]);
|
|
1627
1695
|
const [showStatsOnTiles, setShowStatsOnTiles] = useSetUiSettings(UI_SETTINGS.showStatsOnTiles);
|
|
1628
|
-
const [open, setOpen] =
|
|
1696
|
+
const [open, setOpen] = useState7(false);
|
|
1629
1697
|
const ref = useRef5();
|
|
1630
1698
|
const selectionBg = useDropdownSelection();
|
|
1631
1699
|
useEffect6(() => {
|
|
@@ -1633,7 +1701,7 @@ var StatsForNerds = ({ onOpenChange }) => {
|
|
|
1633
1701
|
setSelectedStat("local-peer");
|
|
1634
1702
|
}
|
|
1635
1703
|
}, [tracksWithLabels, selectedStat]);
|
|
1636
|
-
return /* @__PURE__ */
|
|
1704
|
+
return /* @__PURE__ */ React16.createElement(Dialog.Root, { defaultOpen: true, onOpenChange }, /* @__PURE__ */ React16.createElement(Dialog.Portal, null, /* @__PURE__ */ React16.createElement(Dialog.Overlay, null), /* @__PURE__ */ React16.createElement(
|
|
1637
1705
|
Dialog.Content,
|
|
1638
1706
|
{
|
|
1639
1707
|
css: {
|
|
@@ -1642,10 +1710,10 @@ var StatsForNerds = ({ onOpenChange }) => {
|
|
|
1642
1710
|
overflowY: "auto"
|
|
1643
1711
|
}
|
|
1644
1712
|
},
|
|
1645
|
-
/* @__PURE__ */
|
|
1646
|
-
/* @__PURE__ */
|
|
1647
|
-
/* @__PURE__ */
|
|
1648
|
-
/* @__PURE__ */
|
|
1713
|
+
/* @__PURE__ */ React16.createElement(Dialog.Title, { css: { p: "$4 0" } }, /* @__PURE__ */ React16.createElement(Flex, { justify: "between" }, /* @__PURE__ */ React16.createElement(Flex, { align: "center", css: { mb: "$1" } }, /* @__PURE__ */ React16.createElement(Text, { variant: "h6", inline: true }, "Stats For Nerds")), /* @__PURE__ */ React16.createElement(Dialog.DefaultClose, { "data-testid": "stats_dialog_close_icon" }))),
|
|
1714
|
+
/* @__PURE__ */ React16.createElement(HorizontalDivider, { css: { mt: "0.8rem" } }),
|
|
1715
|
+
/* @__PURE__ */ React16.createElement(Flex, { justify: "start", gap: 4, css: { m: "$10 0" } }, /* @__PURE__ */ React16.createElement(Switch, { checked: showStatsOnTiles, onCheckedChange: setShowStatsOnTiles }), /* @__PURE__ */ React16.createElement(Text, { variant: "body2", css: { fontWeight: "$semiBold" } }, "Show Stats on Tiles")),
|
|
1716
|
+
/* @__PURE__ */ React16.createElement(
|
|
1649
1717
|
Flex,
|
|
1650
1718
|
{
|
|
1651
1719
|
direction: "column",
|
|
@@ -1655,8 +1723,8 @@ var StatsForNerds = ({ onOpenChange }) => {
|
|
|
1655
1723
|
minWidth: 0
|
|
1656
1724
|
}
|
|
1657
1725
|
},
|
|
1658
|
-
/* @__PURE__ */
|
|
1659
|
-
/* @__PURE__ */
|
|
1726
|
+
/* @__PURE__ */ React16.createElement(Label, { variant: "body2" }, "Stats For"),
|
|
1727
|
+
/* @__PURE__ */ React16.createElement(Dropdown.Root, { "data-testid": "dialog_select_Stats For", open, onOpenChange: setOpen }, /* @__PURE__ */ React16.createElement(
|
|
1660
1728
|
DialogDropdownTrigger,
|
|
1661
1729
|
{
|
|
1662
1730
|
title: selectedStat.label || "Select Stats",
|
|
@@ -1665,9 +1733,9 @@ var StatsForNerds = ({ onOpenChange }) => {
|
|
|
1665
1733
|
open,
|
|
1666
1734
|
ref
|
|
1667
1735
|
}
|
|
1668
|
-
), /* @__PURE__ */
|
|
1736
|
+
), /* @__PURE__ */ React16.createElement(Dropdown.Portal, null, /* @__PURE__ */ React16.createElement(Dropdown.Content, { align: "start", sideOffset: 8, css: { w: (_a = ref.current) == null ? void 0 : _a.clientWidth, zIndex: 1e3 } }, statsOptions.map((option) => {
|
|
1669
1737
|
const isSelected = option.id === selectedStat.id && option.layer === selectedStat.layer;
|
|
1670
|
-
return /* @__PURE__ */
|
|
1738
|
+
return /* @__PURE__ */ React16.createElement(
|
|
1671
1739
|
Dropdown.Item,
|
|
1672
1740
|
{
|
|
1673
1741
|
key: `${option.id}-${option.layer || ""}`,
|
|
@@ -1677,20 +1745,20 @@ var StatsForNerds = ({ onOpenChange }) => {
|
|
|
1677
1745
|
css: {
|
|
1678
1746
|
px: "$9",
|
|
1679
1747
|
bg: isSelected ? selectionBg : void 0,
|
|
1680
|
-
c: isSelected ? "$
|
|
1748
|
+
c: isSelected ? "$on_primary_high" : "$on_primary_high"
|
|
1681
1749
|
}
|
|
1682
1750
|
},
|
|
1683
1751
|
option.label
|
|
1684
1752
|
);
|
|
1685
1753
|
}))))
|
|
1686
1754
|
),
|
|
1687
|
-
selectedStat.id === "local-peer" ? /* @__PURE__ */
|
|
1755
|
+
selectedStat.id === "local-peer" ? /* @__PURE__ */ React16.createElement(LocalPeerStats, null) : /* @__PURE__ */ React16.createElement(TrackStats, { trackID: selectedStat.id, layer: selectedStat.layer, local: selectedStat.local })
|
|
1688
1756
|
)));
|
|
1689
1757
|
};
|
|
1690
1758
|
var useTracksWithLabel = () => {
|
|
1691
|
-
const tracksMap =
|
|
1692
|
-
const peersMap =
|
|
1693
|
-
const localPeerID =
|
|
1759
|
+
const tracksMap = useHMSStore13(selectTracksMap);
|
|
1760
|
+
const peersMap = useHMSStore13(selectPeersMap);
|
|
1761
|
+
const localPeerID = useHMSStore13(selectLocalPeerID4);
|
|
1694
1762
|
const tracksWithLabels = useMemo3(
|
|
1695
1763
|
() => Object.values(tracksMap).reduce((res, track) => {
|
|
1696
1764
|
var _a, _b;
|
|
@@ -1726,13 +1794,13 @@ var LocalPeerStats = () => {
|
|
|
1726
1794
|
if (!stats) {
|
|
1727
1795
|
return null;
|
|
1728
1796
|
}
|
|
1729
|
-
return /* @__PURE__ */
|
|
1797
|
+
return /* @__PURE__ */ React16.createElement(Flex, { css: { flexWrap: "wrap", gap: "$10" } }, /* @__PURE__ */ React16.createElement(StatsRow, { label: "Packets Lost", value: (_a = stats.subscribe) == null ? void 0 : _a.packetsLost }), /* @__PURE__ */ React16.createElement(StatsRow, { label: "Jitter", value: (_b = stats.subscribe) == null ? void 0 : _b.jitter }), /* @__PURE__ */ React16.createElement(StatsRow, { label: "Publish Bitrate", value: formatBytes((_c = stats.publish) == null ? void 0 : _c.bitrate, "b/s") }), /* @__PURE__ */ React16.createElement(StatsRow, { label: "Subscribe Bitrate", value: formatBytes((_d = stats.subscribe) == null ? void 0 : _d.bitrate, "b/s") }), /* @__PURE__ */ React16.createElement(
|
|
1730
1798
|
StatsRow,
|
|
1731
1799
|
{
|
|
1732
1800
|
label: "Available Outgoing Bitrate",
|
|
1733
1801
|
value: formatBytes((_e = stats.publish) == null ? void 0 : _e.availableOutgoingBitrate, "b/s")
|
|
1734
1802
|
}
|
|
1735
|
-
), /* @__PURE__ */
|
|
1803
|
+
), /* @__PURE__ */ React16.createElement(StatsRow, { label: "Total Bytes Sent", value: formatBytes((_f = stats.publish) == null ? void 0 : _f.bytesSent) }), /* @__PURE__ */ React16.createElement(StatsRow, { label: "Total Bytes Received", value: formatBytes((_g = stats.subscribe) == null ? void 0 : _g.bytesReceived) }), /* @__PURE__ */ React16.createElement(
|
|
1736
1804
|
StatsRow,
|
|
1737
1805
|
{
|
|
1738
1806
|
label: "Round Trip Time",
|
|
@@ -1748,27 +1816,26 @@ var TrackStats = ({ trackID, layer, local }) => {
|
|
|
1748
1816
|
return null;
|
|
1749
1817
|
}
|
|
1750
1818
|
const inbound = stats.type.includes("inbound");
|
|
1751
|
-
return /* @__PURE__ */
|
|
1819
|
+
return /* @__PURE__ */ React16.createElement(Flex, { css: { flexWrap: "wrap", gap: "$10" } }, /* @__PURE__ */ React16.createElement(StatsRow, { label: "Type", value: stats.type + " " + stats.kind }), /* @__PURE__ */ React16.createElement(StatsRow, { label: "Bitrate", value: formatBytes(stats.bitrate, "b/s") }), /* @__PURE__ */ React16.createElement(StatsRow, { label: "Packets Lost", value: stats.packetsLost }), /* @__PURE__ */ React16.createElement(StatsRow, { label: "Jitter", value: (_a = stats.jitter) == null ? void 0 : _a.toFixed(3) }), /* @__PURE__ */ React16.createElement(
|
|
1752
1820
|
StatsRow,
|
|
1753
1821
|
{
|
|
1754
1822
|
label: inbound ? "Bytes Received" : "Bytes Sent",
|
|
1755
1823
|
value: formatBytes(inbound ? stats.bytesReceived : stats.bytesSent)
|
|
1756
1824
|
}
|
|
1757
|
-
), stats.kind === "video" && /* @__PURE__ */
|
|
1825
|
+
), stats.kind === "video" && /* @__PURE__ */ React16.createElement(React16.Fragment, null, /* @__PURE__ */ React16.createElement(StatsRow, { label: "Framerate", value: stats.framesPerSecond }), !inbound && /* @__PURE__ */ React16.createElement(StatsRow, { label: "Quality Limitation Reason", value: stats.qualityLimitationReason })), /* @__PURE__ */ React16.createElement(StatsRow, { label: "Round Trip Time", value: stats.roundTripTime ? `${stats.roundTripTime * 1e3} ms` : "-" }));
|
|
1758
1826
|
};
|
|
1759
|
-
var StatsRow =
|
|
1827
|
+
var StatsRow = React16.memo(({ label, value }) => /* @__PURE__ */ React16.createElement(Box, { css: { bg: "$surface_bright", w: "calc(50% - $6)", p: "$8", r: "$3" } }, /* @__PURE__ */ React16.createElement(
|
|
1760
1828
|
Text,
|
|
1761
1829
|
{
|
|
1762
1830
|
variant: "overline",
|
|
1763
1831
|
css: {
|
|
1764
1832
|
fontWeight: "$semiBold",
|
|
1765
|
-
color: "$
|
|
1833
|
+
color: "$on_surface_medium",
|
|
1766
1834
|
textTransform: "uppercase"
|
|
1767
1835
|
}
|
|
1768
1836
|
},
|
|
1769
|
-
label
|
|
1770
|
-
|
|
1771
|
-
), /* @__PURE__ */ React15.createElement(Text, { variant: "sub1", css: { fontWeight: "$semiBold", color: "$textHighEmp" } }, value || "-")));
|
|
1837
|
+
label
|
|
1838
|
+
), /* @__PURE__ */ React16.createElement(Text, { variant: "sub1", css: { fontWeight: "$semiBold", color: "$on_surface_high" } }, value || "-")));
|
|
1772
1839
|
var formatBytes = (bytes, unit = "B", decimals = 2) => {
|
|
1773
1840
|
if (bytes === void 0)
|
|
1774
1841
|
return "-";
|
|
@@ -1783,22 +1850,22 @@ var formatBytes = (bytes, unit = "B", decimals = 2) => {
|
|
|
1783
1850
|
|
|
1784
1851
|
// src/Prebuilt/components/MoreSettings/BulkRoleChangeModal.jsx
|
|
1785
1852
|
init_define_process_env();
|
|
1786
|
-
import
|
|
1787
|
-
import { useHMSActions as
|
|
1853
|
+
import React17, { useCallback as useCallback6, useRef as useRef6, useState as useState8 } from "react";
|
|
1854
|
+
import { useHMSActions as useHMSActions8 } from "@100mslive/react-sdk";
|
|
1788
1855
|
import { AlertTriangleIcon as AlertTriangleIcon2, ChangeRoleIcon, CheckIcon } from "@100mslive/react-icons";
|
|
1789
1856
|
var BulkRoleChangeModal = ({ onOpenChange }) => {
|
|
1790
1857
|
var _a, _b;
|
|
1791
1858
|
const roles = useFilteredRoles();
|
|
1792
|
-
const hmsActions =
|
|
1859
|
+
const hmsActions = useHMSActions8();
|
|
1793
1860
|
const ref = useRef6(null);
|
|
1794
1861
|
const roleRef = useRef6(null);
|
|
1795
|
-
const [selectedBulkRole, setBulkRole] =
|
|
1796
|
-
const [selectedRole, setRole] =
|
|
1797
|
-
const [bulkRoleDialog, setBulkRoleDialog] =
|
|
1798
|
-
const [roleDialog, setRoleDialog] =
|
|
1799
|
-
const [errorMessage, setErrorMessage] =
|
|
1800
|
-
const [isSubmiting, setIsSubmiting] =
|
|
1801
|
-
const changeBulkRole =
|
|
1862
|
+
const [selectedBulkRole, setBulkRole] = useState8([]);
|
|
1863
|
+
const [selectedRole, setRole] = useState8("");
|
|
1864
|
+
const [bulkRoleDialog, setBulkRoleDialog] = useState8(false);
|
|
1865
|
+
const [roleDialog, setRoleDialog] = useState8(false);
|
|
1866
|
+
const [errorMessage, setErrorMessage] = useState8("");
|
|
1867
|
+
const [isSubmiting, setIsSubmiting] = useState8(false);
|
|
1868
|
+
const changeBulkRole = useCallback6(() => __async(void 0, null, function* () {
|
|
1802
1869
|
if (selectedBulkRole.length > 0 && selectedRole) {
|
|
1803
1870
|
try {
|
|
1804
1871
|
setIsSubmiting(true);
|
|
@@ -1812,7 +1879,7 @@ var BulkRoleChangeModal = ({ onOpenChange }) => {
|
|
|
1812
1879
|
}
|
|
1813
1880
|
}
|
|
1814
1881
|
}), [selectedBulkRole, selectedRole, hmsActions, onOpenChange]);
|
|
1815
|
-
return /* @__PURE__ */
|
|
1882
|
+
return /* @__PURE__ */ React17.createElement(Dialog.Root, { defaultOpen: true, onOpenChange }, /* @__PURE__ */ React17.createElement(DialogContent, { title: "Bulk Role Change", Icon: ChangeRoleIcon }, /* @__PURE__ */ React17.createElement(DialogRow, null, /* @__PURE__ */ React17.createElement(Text, null, "For Roles: "), /* @__PURE__ */ React17.createElement(
|
|
1816
1883
|
Dropdown.Root,
|
|
1817
1884
|
{
|
|
1818
1885
|
open: bulkRoleDialog,
|
|
@@ -1823,7 +1890,7 @@ var BulkRoleChangeModal = ({ onOpenChange }) => {
|
|
|
1823
1890
|
},
|
|
1824
1891
|
modal: false
|
|
1825
1892
|
},
|
|
1826
|
-
/* @__PURE__ */
|
|
1893
|
+
/* @__PURE__ */ React17.createElement(
|
|
1827
1894
|
DialogDropdownTrigger,
|
|
1828
1895
|
{
|
|
1829
1896
|
ref,
|
|
@@ -1835,7 +1902,7 @@ var BulkRoleChangeModal = ({ onOpenChange }) => {
|
|
|
1835
1902
|
open: bulkRoleDialog
|
|
1836
1903
|
}
|
|
1837
1904
|
),
|
|
1838
|
-
/* @__PURE__ */
|
|
1905
|
+
/* @__PURE__ */ React17.createElement(
|
|
1839
1906
|
Dropdown.Content,
|
|
1840
1907
|
{
|
|
1841
1908
|
css: { w: (_a = ref.current) == null ? void 0 : _a.clientWidth, zIndex: 1e3 },
|
|
@@ -1846,7 +1913,7 @@ var BulkRoleChangeModal = ({ onOpenChange }) => {
|
|
|
1846
1913
|
}
|
|
1847
1914
|
},
|
|
1848
1915
|
roles && roles.map((role) => {
|
|
1849
|
-
return /* @__PURE__ */
|
|
1916
|
+
return /* @__PURE__ */ React17.createElement(
|
|
1850
1917
|
Dropdown.CheckboxItem,
|
|
1851
1918
|
{
|
|
1852
1919
|
key: role,
|
|
@@ -1858,12 +1925,12 @@ var BulkRoleChangeModal = ({ onOpenChange }) => {
|
|
|
1858
1925
|
setErrorMessage("");
|
|
1859
1926
|
}
|
|
1860
1927
|
},
|
|
1861
|
-
/* @__PURE__ */
|
|
1928
|
+
/* @__PURE__ */ React17.createElement(Checkbox.Root, { css: { margin: "$2" }, checked: selectedBulkRole.includes(role) }, /* @__PURE__ */ React17.createElement(Checkbox.Indicator, null, /* @__PURE__ */ React17.createElement(CheckIcon, { width: 16, height: 16 }))),
|
|
1862
1929
|
role
|
|
1863
1930
|
);
|
|
1864
1931
|
})
|
|
1865
1932
|
)
|
|
1866
|
-
)), /* @__PURE__ */
|
|
1933
|
+
)), /* @__PURE__ */ React17.createElement(DialogRow, null, /* @__PURE__ */ React17.createElement(Text, null, "To Role: "), /* @__PURE__ */ React17.createElement(Dropdown.Root, { open: roleDialog, onOpenChange: (value) => setRoleDialog(value) }, /* @__PURE__ */ React17.createElement(
|
|
1867
1934
|
DialogDropdownTrigger,
|
|
1868
1935
|
{
|
|
1869
1936
|
ref: roleRef,
|
|
@@ -1874,8 +1941,8 @@ var BulkRoleChangeModal = ({ onOpenChange }) => {
|
|
|
1874
1941
|
},
|
|
1875
1942
|
open: roleDialog
|
|
1876
1943
|
}
|
|
1877
|
-
), /* @__PURE__ */
|
|
1878
|
-
return /* @__PURE__ */
|
|
1944
|
+
), /* @__PURE__ */ React17.createElement(Dropdown.Content, { css: { w: (_b = roleRef.current) == null ? void 0 : _b.clientWidth, zIndex: 1e3 } }, roles && roles.map((role) => {
|
|
1945
|
+
return /* @__PURE__ */ React17.createElement(
|
|
1879
1946
|
Dropdown.Item,
|
|
1880
1947
|
{
|
|
1881
1948
|
key: role,
|
|
@@ -1886,18 +1953,18 @@ var BulkRoleChangeModal = ({ onOpenChange }) => {
|
|
|
1886
1953
|
},
|
|
1887
1954
|
role
|
|
1888
1955
|
);
|
|
1889
|
-
})))), /* @__PURE__ */
|
|
1956
|
+
})))), /* @__PURE__ */ React17.createElement(DialogRow, null, errorMessage && /* @__PURE__ */ React17.createElement(Flex, { gap: 2, css: { c: "$alert_error_default", w: "70%", ml: "auto" } }, /* @__PURE__ */ React17.createElement(AlertTriangleIcon2, null), /* @__PURE__ */ React17.createElement(Text, { css: { c: "inherit" } }, errorMessage))), /* @__PURE__ */ React17.createElement(DialogRow, { justify: "end" }, /* @__PURE__ */ React17.createElement(Button, { variant: "primary", onClick: changeBulkRole, disabled: !(selectedRole && selectedBulkRole.length > 0) }, isSubmiting && /* @__PURE__ */ React17.createElement(Loading, { css: { color: "$on_primary_medium" } }), "Apply"))));
|
|
1890
1957
|
};
|
|
1891
1958
|
|
|
1892
1959
|
// src/Prebuilt/components/MoreSettings/ChangeNameModal.jsx
|
|
1893
1960
|
init_define_process_env();
|
|
1894
|
-
import
|
|
1895
|
-
import { selectLocalPeerName, useHMSActions as
|
|
1961
|
+
import React18, { useState as useState9 } from "react";
|
|
1962
|
+
import { selectLocalPeerName, useHMSActions as useHMSActions9, useHMSStore as useHMSStore14 } from "@100mslive/react-sdk";
|
|
1896
1963
|
var ChangeNameModal = ({ onOpenChange }) => {
|
|
1897
1964
|
const [previewPreference, setPreviewPreference] = useUserPreferences(UserPreferencesKeys.PREVIEW);
|
|
1898
|
-
const hmsActions =
|
|
1899
|
-
const localPeerName =
|
|
1900
|
-
const [currentName, setCurrentName] =
|
|
1965
|
+
const hmsActions = useHMSActions9();
|
|
1966
|
+
const localPeerName = useHMSStore14(selectLocalPeerName);
|
|
1967
|
+
const [currentName, setCurrentName] = useState9(localPeerName);
|
|
1901
1968
|
const changeName = () => __async(void 0, null, function* () {
|
|
1902
1969
|
const name = currentName.trim();
|
|
1903
1970
|
if (!name || name === localPeerName) {
|
|
@@ -1915,7 +1982,7 @@ var ChangeNameModal = ({ onOpenChange }) => {
|
|
|
1915
1982
|
onOpenChange(false);
|
|
1916
1983
|
}
|
|
1917
1984
|
});
|
|
1918
|
-
return /* @__PURE__ */
|
|
1985
|
+
return /* @__PURE__ */ React18.createElement(Dialog.Root, { defaultOpen: true, onOpenChange }, /* @__PURE__ */ React18.createElement(Dialog.Portal, null, /* @__PURE__ */ React18.createElement(Dialog.Overlay, null), /* @__PURE__ */ React18.createElement(Dialog.Content, { css: { width: "min(400px,80%)", p: "$10" } }, /* @__PURE__ */ React18.createElement(Dialog.Title, { css: { p: "0 $4" } }, /* @__PURE__ */ React18.createElement(Text, { variant: "h6" }, " Change Name")), /* @__PURE__ */ React18.createElement(
|
|
1919
1986
|
"form",
|
|
1920
1987
|
{
|
|
1921
1988
|
onSubmit: (e) => __async(void 0, null, function* () {
|
|
@@ -1923,7 +1990,7 @@ var ChangeNameModal = ({ onOpenChange }) => {
|
|
|
1923
1990
|
yield changeName();
|
|
1924
1991
|
})
|
|
1925
1992
|
},
|
|
1926
|
-
/* @__PURE__ */
|
|
1993
|
+
/* @__PURE__ */ React18.createElement(Flex, { justify: "center", align: "center", css: { my: "$8", w: "100%" } }, /* @__PURE__ */ React18.createElement(
|
|
1927
1994
|
Input,
|
|
1928
1995
|
{
|
|
1929
1996
|
css: { width: "100%" },
|
|
@@ -1936,7 +2003,7 @@ var ChangeNameModal = ({ onOpenChange }) => {
|
|
|
1936
2003
|
"data-testid": "change_name_field"
|
|
1937
2004
|
}
|
|
1938
2005
|
)),
|
|
1939
|
-
/* @__PURE__ */
|
|
2006
|
+
/* @__PURE__ */ React18.createElement(
|
|
1940
2007
|
Flex,
|
|
1941
2008
|
{
|
|
1942
2009
|
justify: "between",
|
|
@@ -1947,8 +2014,8 @@ var ChangeNameModal = ({ onOpenChange }) => {
|
|
|
1947
2014
|
mt: "$10"
|
|
1948
2015
|
}
|
|
1949
2016
|
},
|
|
1950
|
-
/* @__PURE__ */
|
|
1951
|
-
/* @__PURE__ */
|
|
2017
|
+
/* @__PURE__ */ React18.createElement(Box, { css: { w: "50%" } }, /* @__PURE__ */ React18.createElement(Dialog.Close, { css: { w: "100%" } }, /* @__PURE__ */ React18.createElement(Button, { variant: "standard", css: { w: "100%" }, outlined: true, type: "submit", disabled: !localPeerName }, "Cancel"))),
|
|
2018
|
+
/* @__PURE__ */ React18.createElement(Box, { css: { w: "50%" } }, /* @__PURE__ */ React18.createElement(
|
|
1952
2019
|
Button,
|
|
1953
2020
|
{
|
|
1954
2021
|
variant: "primary",
|
|
@@ -1965,29 +2032,29 @@ var ChangeNameModal = ({ onOpenChange }) => {
|
|
|
1965
2032
|
|
|
1966
2033
|
// src/Prebuilt/components/MoreSettings/ChangeSelfRole.jsx
|
|
1967
2034
|
init_define_process_env();
|
|
1968
|
-
import
|
|
2035
|
+
import React19, { useMemo as useMemo4 } from "react";
|
|
1969
2036
|
import { useMedia as useMedia4 } from "react-use";
|
|
1970
2037
|
import {
|
|
1971
2038
|
selectLocalPeerID as selectLocalPeerID5,
|
|
1972
2039
|
selectLocalPeerRoleName as selectLocalPeerRoleName4,
|
|
1973
|
-
selectPermissions as
|
|
1974
|
-
useHMSActions as
|
|
1975
|
-
useHMSStore as
|
|
2040
|
+
selectPermissions as selectPermissions3,
|
|
2041
|
+
useHMSActions as useHMSActions10,
|
|
2042
|
+
useHMSStore as useHMSStore15
|
|
1976
2043
|
} from "@100mslive/react-sdk";
|
|
1977
2044
|
import { ArrowRightIcon, CheckIcon as CheckIcon2, PersonIcon } from "@100mslive/react-icons";
|
|
1978
2045
|
var ChangeSelfRole = ({ onClick }) => {
|
|
1979
2046
|
const roles = useFilteredRoles();
|
|
1980
|
-
const permissions =
|
|
1981
|
-
const localPeerId =
|
|
1982
|
-
const localPeerRole =
|
|
1983
|
-
const hmsActions =
|
|
2047
|
+
const permissions = useHMSStore15(selectPermissions3);
|
|
2048
|
+
const localPeerId = useHMSStore15(selectLocalPeerID5);
|
|
2049
|
+
const localPeerRole = useHMSStore15(selectLocalPeerRoleName4);
|
|
2050
|
+
const hmsActions = useHMSActions10();
|
|
1984
2051
|
const hideTriggerItem = useMedia4(config.media.sm);
|
|
1985
2052
|
const selfRoleChangeTo = useAppLayout("selfRoleChangeTo");
|
|
1986
2053
|
const availableSelfChangeRoles = useMemo4(() => arrayIntersection(selfRoleChangeTo, roles), [roles, selfRoleChangeTo]);
|
|
1987
2054
|
if (!permissions.changeRole) {
|
|
1988
2055
|
return null;
|
|
1989
2056
|
}
|
|
1990
|
-
return hideTriggerItem ? /* @__PURE__ */
|
|
2057
|
+
return hideTriggerItem ? /* @__PURE__ */ React19.createElement(Dropdown.Item, { onClick }, /* @__PURE__ */ React19.createElement(PersonIcon, null), /* @__PURE__ */ React19.createElement(Text, { variant: "sm", css: { mx: "$4" } }, "Change My Role")) : /* @__PURE__ */ React19.createElement(Dropdown.SubMenu, null, /* @__PURE__ */ React19.createElement(Dropdown.TriggerItem, { "data-testid": "change_my_role_btn" }, /* @__PURE__ */ React19.createElement(PersonIcon, null), /* @__PURE__ */ React19.createElement(Text, { variant: "sm", css: { flex: "1 1 0", mx: "$4" } }, "Change My Role"), /* @__PURE__ */ React19.createElement(ArrowRightIcon, null)), /* @__PURE__ */ React19.createElement(Dropdown.SubMenuContent, { sideOffset: 8, alignOffset: -5, css: { py: "$0", "@md": { w: "$64" } } }, availableSelfChangeRoles.map((role) => /* @__PURE__ */ React19.createElement(
|
|
1991
2058
|
Dropdown.Item,
|
|
1992
2059
|
{
|
|
1993
2060
|
key: role,
|
|
@@ -2001,20 +2068,20 @@ var ChangeSelfRole = ({ onClick }) => {
|
|
|
2001
2068
|
}),
|
|
2002
2069
|
"data-testid": "change_to_role_" + role
|
|
2003
2070
|
},
|
|
2004
|
-
/* @__PURE__ */
|
|
2005
|
-
localPeerRole === role && /* @__PURE__ */
|
|
2071
|
+
/* @__PURE__ */ React19.createElement(Text, { variant: "sm" }, role),
|
|
2072
|
+
localPeerRole === role && /* @__PURE__ */ React19.createElement(CheckIcon2, { width: 16, height: 16 })
|
|
2006
2073
|
))));
|
|
2007
2074
|
};
|
|
2008
2075
|
|
|
2009
2076
|
// src/Prebuilt/components/MoreSettings/EmbedUrl.jsx
|
|
2010
2077
|
init_define_process_env();
|
|
2011
|
-
import
|
|
2078
|
+
import React20, { useState as useState10 } from "react";
|
|
2012
2079
|
import { ViewIcon } from "@100mslive/react-icons";
|
|
2013
2080
|
var EmbedUrl = ({ setShowOpenUrl }) => {
|
|
2014
2081
|
if (!window.CropTarget) {
|
|
2015
2082
|
return null;
|
|
2016
2083
|
}
|
|
2017
|
-
return /* @__PURE__ */
|
|
2084
|
+
return /* @__PURE__ */ React20.createElement(
|
|
2018
2085
|
Dropdown.Item,
|
|
2019
2086
|
{
|
|
2020
2087
|
onClick: () => {
|
|
@@ -2022,16 +2089,16 @@ var EmbedUrl = ({ setShowOpenUrl }) => {
|
|
|
2022
2089
|
},
|
|
2023
2090
|
"data-testid": "embed_url_btn"
|
|
2024
2091
|
},
|
|
2025
|
-
/* @__PURE__ */
|
|
2026
|
-
/* @__PURE__ */
|
|
2092
|
+
/* @__PURE__ */ React20.createElement(ViewIcon, null),
|
|
2093
|
+
/* @__PURE__ */ React20.createElement(Text, { variant: "sm", css: { ml: "$4" } }, "Embed URL")
|
|
2027
2094
|
);
|
|
2028
2095
|
};
|
|
2029
2096
|
function EmbedUrlModal({ onOpenChange }) {
|
|
2030
2097
|
const [embedConfig, setEmbedConfig] = useSetAppDataByKey(APP_DATA.embedConfig);
|
|
2031
|
-
const [url, setUrl] =
|
|
2098
|
+
const [url, setUrl] = useState10((embedConfig == null ? void 0 : embedConfig.url) || "");
|
|
2032
2099
|
const isAnythingEmbedded = !!(embedConfig == null ? void 0 : embedConfig.url);
|
|
2033
2100
|
const isModifying = isAnythingEmbedded && url && url !== embedConfig.url;
|
|
2034
|
-
return /* @__PURE__ */
|
|
2101
|
+
return /* @__PURE__ */ React20.createElement(Dialog.Root, { defaultOpen: true, onOpenChange }, /* @__PURE__ */ React20.createElement(DialogContent, { title: "Embed URL", Icon: ViewIcon }, /* @__PURE__ */ React20.createElement(DialogInput, { title: "URL", value: url, onChange: setUrl, placeholder: "https://www.tldraw.com/", type: "url" }), /* @__PURE__ */ React20.createElement(DialogRow, null, /* @__PURE__ */ React20.createElement(Text, null, "Embed a url and share with everyone in the room. Ensure that you're sharing the current tab when the prompt opens. Note that not all websites support being embedded.")), /* @__PURE__ */ React20.createElement(DialogRow, { justify: "end" }, isAnythingEmbedded ? /* @__PURE__ */ React20.createElement(React20.Fragment, null, /* @__PURE__ */ React20.createElement(
|
|
2035
2102
|
Button,
|
|
2036
2103
|
{
|
|
2037
2104
|
variant: "primary",
|
|
@@ -2045,7 +2112,7 @@ function EmbedUrlModal({ onOpenChange }) {
|
|
|
2045
2112
|
css: { mr: "$4" }
|
|
2046
2113
|
},
|
|
2047
2114
|
"Update Embed"
|
|
2048
|
-
), /* @__PURE__ */
|
|
2115
|
+
), /* @__PURE__ */ React20.createElement(
|
|
2049
2116
|
Button,
|
|
2050
2117
|
{
|
|
2051
2118
|
variant: "danger",
|
|
@@ -2057,7 +2124,7 @@ function EmbedUrlModal({ onOpenChange }) {
|
|
|
2057
2124
|
"data-testid": "embed_url_btn"
|
|
2058
2125
|
},
|
|
2059
2126
|
"Stop Embed"
|
|
2060
|
-
)) : /* @__PURE__ */
|
|
2127
|
+
)) : /* @__PURE__ */ React20.createElement(React20.Fragment, null, /* @__PURE__ */ React20.createElement(
|
|
2061
2128
|
Button,
|
|
2062
2129
|
{
|
|
2063
2130
|
variant: "primary",
|
|
@@ -2071,7 +2138,7 @@ function EmbedUrlModal({ onOpenChange }) {
|
|
|
2071
2138
|
css: { mr: "$4" }
|
|
2072
2139
|
},
|
|
2073
2140
|
"Just Embed"
|
|
2074
|
-
), /* @__PURE__ */
|
|
2141
|
+
), /* @__PURE__ */ React20.createElement(
|
|
2075
2142
|
Button,
|
|
2076
2143
|
{
|
|
2077
2144
|
variant: "primary",
|
|
@@ -2089,16 +2156,16 @@ function EmbedUrlModal({ onOpenChange }) {
|
|
|
2089
2156
|
|
|
2090
2157
|
// src/Prebuilt/components/MoreSettings/FullScreenItem.jsx
|
|
2091
2158
|
init_define_process_env();
|
|
2092
|
-
import
|
|
2159
|
+
import React21 from "react";
|
|
2093
2160
|
import { ExpandIcon as ExpandIcon2 } from "@100mslive/react-icons";
|
|
2094
2161
|
|
|
2095
2162
|
// src/Prebuilt/components/hooks/useFullscreen.js
|
|
2096
2163
|
init_define_process_env();
|
|
2097
|
-
import { useCallback as
|
|
2164
|
+
import { useCallback as useCallback7, useEffect as useEffect7, useState as useState11 } from "react";
|
|
2098
2165
|
import screenfull2 from "screenfull";
|
|
2099
2166
|
var useFullscreen2 = () => {
|
|
2100
|
-
const [isFullScreenEnabled, setIsFullScreenEnabled] =
|
|
2101
|
-
const toggle =
|
|
2167
|
+
const [isFullScreenEnabled, setIsFullScreenEnabled] = useState11(screenfull2.isFullscreen);
|
|
2168
|
+
const toggle = useCallback7(() => __async(void 0, null, function* () {
|
|
2102
2169
|
if (!screenfull2.isEnabled) {
|
|
2103
2170
|
ToastManager.addToast({ title: "Fullscreen feature not supported" });
|
|
2104
2171
|
return;
|
|
@@ -2140,7 +2207,7 @@ var FullScreenItem = () => {
|
|
|
2140
2207
|
if (!isFullscreenEnabled || !allowed) {
|
|
2141
2208
|
return null;
|
|
2142
2209
|
}
|
|
2143
|
-
return /* @__PURE__ */
|
|
2210
|
+
return /* @__PURE__ */ React21.createElement(
|
|
2144
2211
|
Dropdown.Item,
|
|
2145
2212
|
{
|
|
2146
2213
|
onClick: () => {
|
|
@@ -2148,15 +2215,15 @@ var FullScreenItem = () => {
|
|
|
2148
2215
|
},
|
|
2149
2216
|
"data-testid": "full_screen_btn"
|
|
2150
2217
|
},
|
|
2151
|
-
/* @__PURE__ */
|
|
2152
|
-
/* @__PURE__ */
|
|
2218
|
+
/* @__PURE__ */ React21.createElement(ExpandIcon2, null),
|
|
2219
|
+
/* @__PURE__ */ React21.createElement(Text, { variant: "sm", css: { ml: "$4" } }, isFullscreen ? "Exit " : "Go ", "Fullscreen")
|
|
2153
2220
|
);
|
|
2154
2221
|
};
|
|
2155
2222
|
|
|
2156
2223
|
// src/Prebuilt/components/MoreSettings/MuteAllModal.jsx
|
|
2157
2224
|
init_define_process_env();
|
|
2158
|
-
import
|
|
2159
|
-
import { useHMSActions as
|
|
2225
|
+
import React22, { useCallback as useCallback8, useState as useState12 } from "react";
|
|
2226
|
+
import { useHMSActions as useHMSActions11 } from "@100mslive/react-sdk";
|
|
2160
2227
|
import { MicOffIcon } from "@100mslive/react-icons";
|
|
2161
2228
|
var trackSourceOptions = [
|
|
2162
2229
|
{ label: "All Track Sources", value: "" },
|
|
@@ -2172,12 +2239,12 @@ var trackTypeOptions = [
|
|
|
2172
2239
|
];
|
|
2173
2240
|
var MuteAllModal = ({ onOpenChange }) => {
|
|
2174
2241
|
const roles = useFilteredRoles();
|
|
2175
|
-
const hmsActions =
|
|
2176
|
-
const [enabled, setEnabled] =
|
|
2177
|
-
const [trackType, setTrackType] =
|
|
2178
|
-
const [selectedRole, setRole] =
|
|
2179
|
-
const [selectedSource, setSource] =
|
|
2180
|
-
const muteAll =
|
|
2242
|
+
const hmsActions = useHMSActions11();
|
|
2243
|
+
const [enabled, setEnabled] = useState12(false);
|
|
2244
|
+
const [trackType, setTrackType] = useState12();
|
|
2245
|
+
const [selectedRole, setRole] = useState12();
|
|
2246
|
+
const [selectedSource, setSource] = useState12();
|
|
2247
|
+
const muteAll = useCallback8(() => __async(void 0, null, function* () {
|
|
2181
2248
|
yield hmsActions.setRemoteTracksEnabled({
|
|
2182
2249
|
enabled,
|
|
2183
2250
|
type: trackType,
|
|
@@ -2186,7 +2253,7 @@ var MuteAllModal = ({ onOpenChange }) => {
|
|
|
2186
2253
|
});
|
|
2187
2254
|
onOpenChange(false);
|
|
2188
2255
|
}), [selectedRole, enabled, trackType, selectedSource, hmsActions, onOpenChange]);
|
|
2189
|
-
return /* @__PURE__ */
|
|
2256
|
+
return /* @__PURE__ */ React22.createElement(Dialog.Root, { defaultOpen: true, onOpenChange }, /* @__PURE__ */ React22.createElement(DialogContent, { title: "Mute/Unmute Remote Tracks", Icon: MicOffIcon }, /* @__PURE__ */ React22.createElement(
|
|
2190
2257
|
DialogSelect,
|
|
2191
2258
|
{
|
|
2192
2259
|
title: "Role",
|
|
@@ -2196,7 +2263,7 @@ var MuteAllModal = ({ onOpenChange }) => {
|
|
|
2196
2263
|
labelField: "label",
|
|
2197
2264
|
onChange: setRole
|
|
2198
2265
|
}
|
|
2199
|
-
), /* @__PURE__ */
|
|
2266
|
+
), /* @__PURE__ */ React22.createElement(
|
|
2200
2267
|
DialogSelect,
|
|
2201
2268
|
{
|
|
2202
2269
|
title: "Track type",
|
|
@@ -2206,7 +2273,7 @@ var MuteAllModal = ({ onOpenChange }) => {
|
|
|
2206
2273
|
keyField: "value",
|
|
2207
2274
|
labelField: "label"
|
|
2208
2275
|
}
|
|
2209
|
-
), /* @__PURE__ */
|
|
2276
|
+
), /* @__PURE__ */ React22.createElement(
|
|
2210
2277
|
DialogSelect,
|
|
2211
2278
|
{
|
|
2212
2279
|
title: "Track source",
|
|
@@ -2216,7 +2283,7 @@ var MuteAllModal = ({ onOpenChange }) => {
|
|
|
2216
2283
|
keyField: "value",
|
|
2217
2284
|
labelField: "label"
|
|
2218
2285
|
}
|
|
2219
|
-
), /* @__PURE__ */
|
|
2286
|
+
), /* @__PURE__ */ React22.createElement(DialogRow, null, /* @__PURE__ */ React22.createElement(Text, { variant: "md" }, "Track status"), /* @__PURE__ */ React22.createElement(RadioGroup.Root, { value: enabled, onValueChange: setEnabled }, /* @__PURE__ */ React22.createElement(Flex, { align: "center", css: { mr: "$8" } }, /* @__PURE__ */ React22.createElement(RadioGroup.Item, { value: false, id: "trackDisableRadio", css: { mr: "$4" } }, /* @__PURE__ */ React22.createElement(RadioGroup.Indicator, null)), /* @__PURE__ */ React22.createElement(Label, { htmlFor: "trackDisableRadio" }, "Mute")), /* @__PURE__ */ React22.createElement(Flex, { align: "center", css: { cursor: "pointer" } }, /* @__PURE__ */ React22.createElement(RadioGroup.Item, { value: true, id: "trackEnableRadio", css: { mr: "$4" } }, /* @__PURE__ */ React22.createElement(RadioGroup.Indicator, null)), /* @__PURE__ */ React22.createElement(Label, { htmlFor: "trackEnableRadio" }, "Request Unmute")))), /* @__PURE__ */ React22.createElement(DialogRow, { justify: "end" }, /* @__PURE__ */ React22.createElement(Button, { variant: "primary", onClick: muteAll }, "Apply"))));
|
|
2220
2287
|
};
|
|
2221
2288
|
|
|
2222
2289
|
// src/Prebuilt/components/MoreSettings/MoreSettings.jsx
|
|
@@ -2233,18 +2300,18 @@ var MODALS = {
|
|
|
2233
2300
|
EMBED_URL: "embedUrl"
|
|
2234
2301
|
};
|
|
2235
2302
|
var MoreSettings = () => {
|
|
2236
|
-
const permissions =
|
|
2237
|
-
const isAllowedToPublish =
|
|
2238
|
-
const localPeerId =
|
|
2239
|
-
const localPeerRole =
|
|
2240
|
-
const hmsActions =
|
|
2241
|
-
const enablHlsStats =
|
|
2303
|
+
const permissions = useHMSStore16(selectPermissions4);
|
|
2304
|
+
const isAllowedToPublish = useHMSStore16(selectIsAllowedToPublish2);
|
|
2305
|
+
const localPeerId = useHMSStore16(selectLocalPeerID6);
|
|
2306
|
+
const localPeerRole = useHMSStore16(selectLocalPeerRoleName5);
|
|
2307
|
+
const hmsActions = useHMSActions12();
|
|
2308
|
+
const enablHlsStats = useHMSStore16(selectAppData2(APP_DATA.hlsStats));
|
|
2242
2309
|
const isMobile = useMedia5(config.media.md);
|
|
2243
|
-
const { isBrowserRecordingOn } =
|
|
2310
|
+
const { isBrowserRecordingOn } = useRecordingStreaming3();
|
|
2244
2311
|
const isChangeNameEnabled = useIsFeatureEnabled(FEATURE_LIST.CHANGE_NAME);
|
|
2245
2312
|
const isEmbedEnabled = useIsFeatureEnabled(FEATURE_LIST.EMBED_URL);
|
|
2246
2313
|
const isSFNEnabled = useIsFeatureEnabled(FEATURE_LIST.STARTS_FOR_NERDS);
|
|
2247
|
-
const [openModals, setOpenModals] =
|
|
2314
|
+
const [openModals, setOpenModals] = useState13(/* @__PURE__ */ new Set());
|
|
2248
2315
|
useDropdownList({ open: openModals.size > 0, name: "MoreSettings" });
|
|
2249
2316
|
const updateState = (modalName, value) => {
|
|
2250
2317
|
setOpenModals((modals) => {
|
|
@@ -2257,19 +2324,20 @@ var MoreSettings = () => {
|
|
|
2257
2324
|
return copy;
|
|
2258
2325
|
});
|
|
2259
2326
|
};
|
|
2260
|
-
return /* @__PURE__ */
|
|
2327
|
+
return /* @__PURE__ */ React23.createElement(Fragment4, null, /* @__PURE__ */ React23.createElement(
|
|
2261
2328
|
Dropdown.Root,
|
|
2262
2329
|
{
|
|
2263
2330
|
open: openModals.has(MODALS.MORE_SETTINGS),
|
|
2264
2331
|
onOpenChange: (value) => updateState(MODALS.MORE_SETTINGS, value)
|
|
2265
2332
|
},
|
|
2266
|
-
/* @__PURE__ */
|
|
2267
|
-
/* @__PURE__ */
|
|
2333
|
+
/* @__PURE__ */ React23.createElement(Dropdown.Trigger, { asChild: true, "data-testid": "more_settings_btn" }, /* @__PURE__ */ React23.createElement(IconButton_default, null, /* @__PURE__ */ React23.createElement(Tooltip, { title: "More options" }, /* @__PURE__ */ React23.createElement(Box, null, /* @__PURE__ */ React23.createElement(VerticalMenuIcon, null))))),
|
|
2334
|
+
/* @__PURE__ */ React23.createElement(
|
|
2268
2335
|
Dropdown.Content,
|
|
2269
2336
|
{
|
|
2270
2337
|
sideOffset: 5,
|
|
2271
2338
|
align: "center",
|
|
2272
2339
|
css: {
|
|
2340
|
+
py: "$0",
|
|
2273
2341
|
maxHeight: "$96",
|
|
2274
2342
|
"@md": { w: "$64" },
|
|
2275
2343
|
"div[role='separator']:first-child": {
|
|
@@ -2277,66 +2345,66 @@ var MoreSettings = () => {
|
|
|
2277
2345
|
}
|
|
2278
2346
|
}
|
|
2279
2347
|
},
|
|
2280
|
-
isMobile && (permissions == null ? void 0 : permissions.browserRecording) ? /* @__PURE__ */
|
|
2281
|
-
isChangeNameEnabled && /* @__PURE__ */
|
|
2282
|
-
/* @__PURE__ */
|
|
2283
|
-
(permissions == null ? void 0 : permissions.changeRole) && /* @__PURE__ */
|
|
2348
|
+
isMobile && (permissions == null ? void 0 : permissions.browserRecording) ? /* @__PURE__ */ React23.createElement(React23.Fragment, null, /* @__PURE__ */ React23.createElement(Dropdown.Item, { onClick: () => updateState(MODALS.START_RECORDING, true) }, /* @__PURE__ */ React23.createElement(RecordIcon, null), /* @__PURE__ */ React23.createElement(Text, { variant: "sm", css: { ml: "$4" } }, isBrowserRecordingOn ? "Stop" : "Start", " Recording")), /* @__PURE__ */ React23.createElement(Dropdown.ItemSeparator, null)) : null,
|
|
2349
|
+
isChangeNameEnabled && /* @__PURE__ */ React23.createElement(Dropdown.Item, { onClick: () => updateState(MODALS.CHANGE_NAME, true), "data-testid": "change_name_btn" }, /* @__PURE__ */ React23.createElement(PencilIcon, null), /* @__PURE__ */ React23.createElement(Text, { variant: "sm", css: { ml: "$4" } }, "Change Name")),
|
|
2350
|
+
/* @__PURE__ */ React23.createElement(ChangeSelfRole, { onClick: () => updateState(MODALS.SELF_ROLE_CHANGE, true) }),
|
|
2351
|
+
(permissions == null ? void 0 : permissions.changeRole) && /* @__PURE__ */ React23.createElement(
|
|
2284
2352
|
Dropdown.Item,
|
|
2285
2353
|
{
|
|
2286
2354
|
onClick: () => updateState(MODALS.BULK_ROLE_CHANGE, true),
|
|
2287
2355
|
"data-testid": "bulk_role_change_btn"
|
|
2288
2356
|
},
|
|
2289
|
-
/* @__PURE__ */
|
|
2290
|
-
/* @__PURE__ */
|
|
2357
|
+
/* @__PURE__ */ React23.createElement(ChangeRoleIcon2, null),
|
|
2358
|
+
/* @__PURE__ */ React23.createElement(Text, { variant: "sm", css: { ml: "$4" } }, "Bulk Role Change")
|
|
2291
2359
|
),
|
|
2292
|
-
/* @__PURE__ */
|
|
2293
|
-
isAllowedToPublish.screen && isEmbedEnabled && /* @__PURE__ */
|
|
2294
|
-
permissions.mute && /* @__PURE__ */
|
|
2295
|
-
/* @__PURE__ */
|
|
2296
|
-
/* @__PURE__ */
|
|
2297
|
-
FeatureFlags.enableStatsForNerds && isSFNEnabled && (localPeerRole === "hls-viewer" ? Hls.isSupported() ? /* @__PURE__ */
|
|
2360
|
+
/* @__PURE__ */ React23.createElement(FullScreenItem, null),
|
|
2361
|
+
isAllowedToPublish.screen && isEmbedEnabled && /* @__PURE__ */ React23.createElement(EmbedUrl, { setShowOpenUrl: () => updateState(MODALS.EMBED_URL, true) }),
|
|
2362
|
+
permissions.mute && /* @__PURE__ */ React23.createElement(Dropdown.Item, { onClick: () => updateState(MODALS.MUTE_ALL, true), "data-testid": "mute_all_btn" }, /* @__PURE__ */ React23.createElement(MicOffIcon2, null), /* @__PURE__ */ React23.createElement(Text, { variant: "sm", css: { ml: "$4" } }, "Mute All")),
|
|
2363
|
+
/* @__PURE__ */ React23.createElement(Dropdown.ItemSeparator, null),
|
|
2364
|
+
/* @__PURE__ */ React23.createElement(Dropdown.Item, { onClick: () => updateState(MODALS.DEVICE_SETTINGS, true), "data-testid": "device_settings_btn" }, /* @__PURE__ */ React23.createElement(SettingsIcon, null), /* @__PURE__ */ React23.createElement(Text, { variant: "sm", css: { ml: "$4" } }, "Settings")),
|
|
2365
|
+
FeatureFlags.enableStatsForNerds && isSFNEnabled && (localPeerRole === "hls-viewer" ? Hls.isSupported() ? /* @__PURE__ */ React23.createElement(
|
|
2298
2366
|
Dropdown.Item,
|
|
2299
2367
|
{
|
|
2300
2368
|
onClick: () => hmsActions.setAppData(APP_DATA.hlsStats, !enablHlsStats),
|
|
2301
2369
|
"data-testid": "hls_stats"
|
|
2302
2370
|
},
|
|
2303
|
-
/* @__PURE__ */
|
|
2371
|
+
/* @__PURE__ */ React23.createElement(
|
|
2304
2372
|
Checkbox.Root,
|
|
2305
2373
|
{
|
|
2306
2374
|
css: { margin: "$2" },
|
|
2307
2375
|
checked: enablHlsStats,
|
|
2308
2376
|
onCheckedChange: () => hmsActions.setAppData(APP_DATA.hlsStats, !enablHlsStats)
|
|
2309
2377
|
},
|
|
2310
|
-
/* @__PURE__ */
|
|
2378
|
+
/* @__PURE__ */ React23.createElement(Checkbox.Indicator, null, /* @__PURE__ */ React23.createElement(CheckIcon3, { width: 16, height: 16 }))
|
|
2311
2379
|
),
|
|
2312
|
-
/* @__PURE__ */
|
|
2313
|
-
) : null : /* @__PURE__ */
|
|
2380
|
+
/* @__PURE__ */ React23.createElement(Flex, { justify: "between", css: { width: "100%" } }, /* @__PURE__ */ React23.createElement(Text, { variant: "sm", css: { ml: "$4" } }, "Show HLS Stats"), !isMobileOS ? /* @__PURE__ */ React23.createElement(Text, { variant: "sm", css: { ml: "$4" } }, `${isMacOS ? "\u2318" : "ctrl"} + ]`) : null)
|
|
2381
|
+
) : null : /* @__PURE__ */ React23.createElement(
|
|
2314
2382
|
Dropdown.Item,
|
|
2315
2383
|
{
|
|
2316
2384
|
onClick: () => updateState(MODALS.STATS_FOR_NERDS, true),
|
|
2317
2385
|
"data-testid": "stats_for_nreds_btn"
|
|
2318
2386
|
},
|
|
2319
|
-
/* @__PURE__ */
|
|
2320
|
-
/* @__PURE__ */
|
|
2387
|
+
/* @__PURE__ */ React23.createElement(InfoIcon, null),
|
|
2388
|
+
/* @__PURE__ */ React23.createElement(Text, { variant: "sm", css: { ml: "$4" } }, "Stats for Nerds")
|
|
2321
2389
|
))
|
|
2322
2390
|
)
|
|
2323
|
-
), openModals.has(MODALS.BULK_ROLE_CHANGE) && /* @__PURE__ */
|
|
2391
|
+
), openModals.has(MODALS.BULK_ROLE_CHANGE) && /* @__PURE__ */ React23.createElement(BulkRoleChangeModal, { onOpenChange: (value) => updateState(MODALS.BULK_ROLE_CHANGE, value) }), openModals.has(MODALS.MUTE_ALL) && /* @__PURE__ */ React23.createElement(MuteAllModal, { onOpenChange: (value) => updateState(MODALS.MUTE_ALL, value) }), openModals.has(MODALS.CHANGE_NAME) && /* @__PURE__ */ React23.createElement(ChangeNameModal, { onOpenChange: (value) => updateState(MODALS.CHANGE_NAME, value) }), openModals.has(MODALS.DEVICE_SETTINGS) && /* @__PURE__ */ React23.createElement(SettingsModal_default, { open: true, onOpenChange: (value) => updateState(MODALS.DEVICE_SETTINGS, value) }), FeatureFlags.enableStatsForNerds && openModals.has(MODALS.STATS_FOR_NERDS) && /* @__PURE__ */ React23.createElement(StatsForNerds, { open: true, onOpenChange: (value) => updateState(MODALS.STATS_FOR_NERDS, value) }), openModals.has(MODALS.SELF_ROLE_CHANGE) && /* @__PURE__ */ React23.createElement(RoleChangeModal, { peerId: localPeerId, onOpenChange: (value) => updateState(MODALS.SELF_ROLE_CHANGE, value) }), openModals.has(MODALS.START_RECORDING) && /* @__PURE__ */ React23.createElement(StartRecording_default, { open: true, onOpenChange: (value) => updateState(MODALS.START_RECORDING, value) }), openModals.has(MODALS.EMBED_URL) && /* @__PURE__ */ React23.createElement(EmbedUrlModal, { onOpenChange: (value) => updateState(MODALS.EMBED_URL, value) }));
|
|
2324
2392
|
};
|
|
2325
2393
|
|
|
2326
2394
|
// src/Prebuilt/components/PIP/index.jsx
|
|
2327
2395
|
init_define_process_env();
|
|
2328
|
-
import
|
|
2396
|
+
import React25 from "react";
|
|
2329
2397
|
|
|
2330
2398
|
// src/Prebuilt/components/PIP/PIPComponent.jsx
|
|
2331
2399
|
init_define_process_env();
|
|
2332
|
-
import
|
|
2400
|
+
import React24, { useCallback as useCallback9, useEffect as useEffect8, useState as useState14 } from "react";
|
|
2333
2401
|
import {
|
|
2334
2402
|
selectLocalPeerRoleName as selectLocalPeerRoleName6,
|
|
2335
2403
|
selectPeers as selectPeers4,
|
|
2336
2404
|
selectRemotePeers as selectRemotePeers2,
|
|
2337
2405
|
selectTracksMap as selectTracksMap2,
|
|
2338
|
-
useHMSActions as
|
|
2339
|
-
useHMSStore as
|
|
2406
|
+
useHMSActions as useHMSActions13,
|
|
2407
|
+
useHMSStore as useHMSStore17,
|
|
2340
2408
|
useHMSVanillaStore
|
|
2341
2409
|
} from "@100mslive/react-sdk";
|
|
2342
2410
|
import { PipIcon } from "@100mslive/react-icons";
|
|
@@ -2351,10 +2419,10 @@ var CANVAS_FILL_COLOR;
|
|
|
2351
2419
|
var CANVAS_STROKE_COLOR;
|
|
2352
2420
|
function setPIPCanvasColors() {
|
|
2353
2421
|
if (!CANVAS_FILL_COLOR) {
|
|
2354
|
-
CANVAS_FILL_COLOR = window.getComputedStyle(document.documentElement).getPropertyValue("--hms-ui-colors-
|
|
2422
|
+
CANVAS_FILL_COLOR = window.getComputedStyle(document.documentElement).getPropertyValue("--hms-ui-colors-surface_bright");
|
|
2355
2423
|
}
|
|
2356
2424
|
if (!CANVAS_STROKE_COLOR) {
|
|
2357
|
-
CANVAS_STROKE_COLOR = window.getComputedStyle(document.documentElement).getPropertyValue("--hms-ui-colors-
|
|
2425
|
+
CANVAS_STROKE_COLOR = window.getComputedStyle(document.documentElement).getPropertyValue("--hms-ui-colors-border_bright");
|
|
2358
2426
|
}
|
|
2359
2427
|
}
|
|
2360
2428
|
function resetPIPCanvasColors() {
|
|
@@ -2783,12 +2851,12 @@ var MediaSession = new SetupMediaSession();
|
|
|
2783
2851
|
|
|
2784
2852
|
// src/Prebuilt/components/PIP/PIPComponent.jsx
|
|
2785
2853
|
var PIPComponent = ({ peers, showLocalPeer }) => {
|
|
2786
|
-
const localPeerRole =
|
|
2787
|
-
const [isPipOn, setIsPipOn] =
|
|
2788
|
-
const hmsActions =
|
|
2854
|
+
const localPeerRole = useHMSStore17(selectLocalPeerRoleName6);
|
|
2855
|
+
const [isPipOn, setIsPipOn] = useState14(PictureInPicture.isOn());
|
|
2856
|
+
const hmsActions = useHMSActions13();
|
|
2789
2857
|
const store = useHMSVanillaStore();
|
|
2790
2858
|
const isFeatureEnabled = useIsFeatureEnabled(FEATURE_LIST.PICTURE_IN_PICTURE);
|
|
2791
|
-
const onPipToggle =
|
|
2859
|
+
const onPipToggle = useCallback9(() => {
|
|
2792
2860
|
if (!isPipOn) {
|
|
2793
2861
|
PictureInPicture.start(hmsActions, setIsPipOn).catch((err) => console.error("error in starting pip", err));
|
|
2794
2862
|
MediaSession.setup(hmsActions, store);
|
|
@@ -2804,11 +2872,11 @@ var PIPComponent = ({ peers, showLocalPeer }) => {
|
|
|
2804
2872
|
if (!PictureInPicture.isSupported() || localPeerRole === DEFAULT_HLS_VIEWER_ROLE || !isFeatureEnabled) {
|
|
2805
2873
|
return null;
|
|
2806
2874
|
}
|
|
2807
|
-
return /* @__PURE__ */
|
|
2875
|
+
return /* @__PURE__ */ React24.createElement(React24.Fragment, null, /* @__PURE__ */ React24.createElement(Tooltip, { title: `${isPipOn ? "Deactivate" : "Activate"} picture in picture view` }, /* @__PURE__ */ React24.createElement(IconButton_default, { active: !isPipOn, key: "pip", onClick: () => onPipToggle(), "data-testid": "pip_btn" }, /* @__PURE__ */ React24.createElement(PipIcon, null))), isPipOn && /* @__PURE__ */ React24.createElement(ActivatedPIP, { showLocalPeer, peers }));
|
|
2808
2876
|
};
|
|
2809
2877
|
var ActivatedPIP = ({ showLocalPeer, peers }) => {
|
|
2810
|
-
const tracksMap =
|
|
2811
|
-
const storePeers =
|
|
2878
|
+
const tracksMap = useHMSStore17(selectTracksMap2);
|
|
2879
|
+
const storePeers = useHMSStore17(showLocalPeer ? selectPeers4 : selectRemotePeers2);
|
|
2812
2880
|
useEffect8(() => {
|
|
2813
2881
|
let pipPeers = storePeers;
|
|
2814
2882
|
if (peers) {
|
|
@@ -2825,18 +2893,18 @@ var PIPComponent_default = PIPComponent;
|
|
|
2825
2893
|
// src/Prebuilt/components/PIP/index.jsx
|
|
2826
2894
|
var PIP = () => {
|
|
2827
2895
|
const pinnedTrack = usePinnedTrack();
|
|
2828
|
-
return /* @__PURE__ */
|
|
2896
|
+
return /* @__PURE__ */ React25.createElement(PIPComponent_default, { peers: pinnedTrack && pinnedTrack.enabled ? [pinnedTrack.peerId] : void 0, showLocalPeer: true });
|
|
2829
2897
|
};
|
|
2830
2898
|
|
|
2831
2899
|
// src/Prebuilt/components/ScreenShare.jsx
|
|
2832
2900
|
init_define_process_env();
|
|
2833
|
-
import
|
|
2834
|
-
import { selectIsAllowedToPublish as selectIsAllowedToPublish3, useHMSStore as
|
|
2901
|
+
import React33, { Fragment as Fragment6 } from "react";
|
|
2902
|
+
import { selectIsAllowedToPublish as selectIsAllowedToPublish3, useHMSStore as useHMSStore18, useScreenShare as useScreenShare4 } from "@100mslive/react-sdk";
|
|
2835
2903
|
import { ShareScreenIcon as ShareScreenIcon2 } from "@100mslive/react-icons";
|
|
2836
2904
|
|
|
2837
2905
|
// src/Prebuilt/components/pdfAnnotator/shareScreenOptions.jsx
|
|
2838
2906
|
init_define_process_env();
|
|
2839
|
-
import
|
|
2907
|
+
import React32, { Fragment as Fragment5, useState as useState16 } from "react";
|
|
2840
2908
|
import { useScreenShare as useScreenShare3 } from "@100mslive/react-sdk";
|
|
2841
2909
|
import { PdfShare, ScreenShare, StarIcon, VerticalMenuIcon as VerticalMenuIcon2 } from "@100mslive/react-icons";
|
|
2842
2910
|
|
|
@@ -2867,30 +2935,30 @@ var ShareMenuIcon = styled(ScreenShareButton, {
|
|
|
2867
2935
|
|
|
2868
2936
|
// src/Prebuilt/components/pdfAnnotator/pdfFileOptions.jsx
|
|
2869
2937
|
init_define_process_env();
|
|
2870
|
-
import
|
|
2938
|
+
import React31, { useState as useState15 } from "react";
|
|
2871
2939
|
|
|
2872
2940
|
// src/Prebuilt/components/pdfAnnotator/pdfErrorView.jsx
|
|
2873
2941
|
init_define_process_env();
|
|
2874
|
-
import
|
|
2942
|
+
import React26 from "react";
|
|
2875
2943
|
import { InfoIcon as InfoIcon2 } from "@100mslive/react-icons";
|
|
2876
2944
|
var PdfErrorView = ({ isPDFUrlValid }) => {
|
|
2877
|
-
return !isPDFUrlValid && /* @__PURE__ */
|
|
2945
|
+
return !isPDFUrlValid && /* @__PURE__ */ React26.createElement(
|
|
2878
2946
|
DialogRow,
|
|
2879
2947
|
{
|
|
2880
2948
|
css: {
|
|
2881
2949
|
mt: "-$8",
|
|
2882
|
-
color: "$
|
|
2950
|
+
color: "$alert_error_default",
|
|
2883
2951
|
justifyContent: "start"
|
|
2884
2952
|
}
|
|
2885
2953
|
},
|
|
2886
|
-
/* @__PURE__ */
|
|
2887
|
-
/* @__PURE__ */
|
|
2954
|
+
/* @__PURE__ */ React26.createElement(InfoIcon2, { width: "12px", height: "12px" }),
|
|
2955
|
+
/* @__PURE__ */ React26.createElement(
|
|
2888
2956
|
Text,
|
|
2889
2957
|
{
|
|
2890
2958
|
variant: "caption",
|
|
2891
2959
|
css: {
|
|
2892
2960
|
pl: "$1",
|
|
2893
|
-
color: "$
|
|
2961
|
+
color: "$alert_error_default"
|
|
2894
2962
|
}
|
|
2895
2963
|
},
|
|
2896
2964
|
"Please enter a valid PDF URL"
|
|
@@ -2900,9 +2968,9 @@ var PdfErrorView = ({ isPDFUrlValid }) => {
|
|
|
2900
2968
|
|
|
2901
2969
|
// src/Prebuilt/components/pdfAnnotator/pdfHeader.jsx
|
|
2902
2970
|
init_define_process_env();
|
|
2903
|
-
import
|
|
2971
|
+
import React27 from "react";
|
|
2904
2972
|
var PDFHeader = () => {
|
|
2905
|
-
return /* @__PURE__ */
|
|
2973
|
+
return /* @__PURE__ */ React27.createElement(
|
|
2906
2974
|
DialogCol,
|
|
2907
2975
|
{
|
|
2908
2976
|
align: "start",
|
|
@@ -2911,13 +2979,13 @@ var PDFHeader = () => {
|
|
|
2911
2979
|
mb: "$6"
|
|
2912
2980
|
}
|
|
2913
2981
|
},
|
|
2914
|
-
/* @__PURE__ */
|
|
2915
|
-
/* @__PURE__ */
|
|
2982
|
+
/* @__PURE__ */ React27.createElement(Dialog.Title, { asChild: true }, /* @__PURE__ */ React27.createElement(Text, { as: "h6", variant: "h6" }, "Share PDF")),
|
|
2983
|
+
/* @__PURE__ */ React27.createElement(Dialog.Description, { asChild: true }, /* @__PURE__ */ React27.createElement(
|
|
2916
2984
|
Text,
|
|
2917
2985
|
{
|
|
2918
2986
|
variant: "sm",
|
|
2919
2987
|
css: {
|
|
2920
|
-
c: "$
|
|
2988
|
+
c: "$on_surface_medium"
|
|
2921
2989
|
}
|
|
2922
2990
|
},
|
|
2923
2991
|
"Choose PDF you want to annotate and share"
|
|
@@ -2927,23 +2995,23 @@ var PDFHeader = () => {
|
|
|
2927
2995
|
|
|
2928
2996
|
// src/Prebuilt/components/pdfAnnotator/pdfInfo.jsx
|
|
2929
2997
|
init_define_process_env();
|
|
2930
|
-
import
|
|
2998
|
+
import React28 from "react";
|
|
2931
2999
|
import { InfoIcon as InfoIcon3 } from "@100mslive/react-icons";
|
|
2932
3000
|
var PDFInfo = () => {
|
|
2933
|
-
return /* @__PURE__ */
|
|
3001
|
+
return /* @__PURE__ */ React28.createElement(
|
|
2934
3002
|
DialogRow,
|
|
2935
3003
|
{
|
|
2936
3004
|
css: {
|
|
2937
3005
|
px: "$8",
|
|
2938
3006
|
py: "$3",
|
|
2939
|
-
bg: "$
|
|
3007
|
+
bg: "$surface_bright",
|
|
2940
3008
|
r: "$1",
|
|
2941
3009
|
outline: "none",
|
|
2942
|
-
border: "1px solid $
|
|
3010
|
+
border: "1px solid $border_bright",
|
|
2943
3011
|
minHeight: "$11"
|
|
2944
3012
|
}
|
|
2945
3013
|
},
|
|
2946
|
-
/* @__PURE__ */
|
|
3014
|
+
/* @__PURE__ */ React28.createElement(
|
|
2947
3015
|
InfoIcon3,
|
|
2948
3016
|
{
|
|
2949
3017
|
width: "64px",
|
|
@@ -2953,13 +3021,13 @@ var PDFInfo = () => {
|
|
|
2953
3021
|
}
|
|
2954
3022
|
}
|
|
2955
3023
|
),
|
|
2956
|
-
/* @__PURE__ */
|
|
3024
|
+
/* @__PURE__ */ React28.createElement(Text, { variant: "caption" }, "On the next screen, ensure you select \u201CThis Tab\u201D and click on share. Only the PDF viewer will be seen by other participants")
|
|
2957
3025
|
);
|
|
2958
3026
|
};
|
|
2959
3027
|
|
|
2960
3028
|
// src/Prebuilt/components/pdfAnnotator/submitPdf.jsx
|
|
2961
3029
|
init_define_process_env();
|
|
2962
|
-
import
|
|
3030
|
+
import React29, { useCallback as useCallback10 } from "react";
|
|
2963
3031
|
var SubmitPDF = ({
|
|
2964
3032
|
pdfFile,
|
|
2965
3033
|
pdfURL,
|
|
@@ -2969,7 +3037,7 @@ var SubmitPDF = ({
|
|
|
2969
3037
|
onOpenChange
|
|
2970
3038
|
}) => {
|
|
2971
3039
|
const [, setPDFConfig] = useSetAppDataByKey(APP_DATA.pdfConfig);
|
|
2972
|
-
const isValidPDF =
|
|
3040
|
+
const isValidPDF = useCallback10(
|
|
2973
3041
|
(pdfURL2) => {
|
|
2974
3042
|
const extension = pdfURL2.split(".").pop().toLowerCase();
|
|
2975
3043
|
setIsValidateProgress(true);
|
|
@@ -2996,7 +3064,7 @@ var SubmitPDF = ({
|
|
|
2996
3064
|
},
|
|
2997
3065
|
[onOpenChange, pdfFile, setIsPDFUrlValid, setIsValidateProgress, setPDFConfig]
|
|
2998
3066
|
);
|
|
2999
|
-
return /* @__PURE__ */
|
|
3067
|
+
return /* @__PURE__ */ React29.createElement(
|
|
3000
3068
|
Flex,
|
|
3001
3069
|
{
|
|
3002
3070
|
direction: "row",
|
|
@@ -3006,7 +3074,7 @@ var SubmitPDF = ({
|
|
|
3006
3074
|
gap: "$8"
|
|
3007
3075
|
}
|
|
3008
3076
|
},
|
|
3009
|
-
/* @__PURE__ */
|
|
3077
|
+
/* @__PURE__ */ React29.createElement(
|
|
3010
3078
|
Button,
|
|
3011
3079
|
{
|
|
3012
3080
|
variant: "standard",
|
|
@@ -3019,7 +3087,7 @@ var SubmitPDF = ({
|
|
|
3019
3087
|
},
|
|
3020
3088
|
"Cancel"
|
|
3021
3089
|
),
|
|
3022
|
-
/* @__PURE__ */
|
|
3090
|
+
/* @__PURE__ */ React29.createElement(
|
|
3023
3091
|
Button,
|
|
3024
3092
|
{
|
|
3025
3093
|
variant: "primary",
|
|
@@ -3046,7 +3114,7 @@ var SubmitPDF = ({
|
|
|
3046
3114
|
|
|
3047
3115
|
// src/Prebuilt/components/pdfAnnotator/uploadedFile.jsx
|
|
3048
3116
|
init_define_process_env();
|
|
3049
|
-
import
|
|
3117
|
+
import React30 from "react";
|
|
3050
3118
|
import { TrashIcon } from "@100mslive/react-icons";
|
|
3051
3119
|
var UploadedFile = ({
|
|
3052
3120
|
pdfFile,
|
|
@@ -3058,7 +3126,7 @@ var UploadedFile = ({
|
|
|
3058
3126
|
onOpenChange
|
|
3059
3127
|
}) => {
|
|
3060
3128
|
const [fileName, ext] = pdfFile.name.split(".");
|
|
3061
|
-
return /* @__PURE__ */
|
|
3129
|
+
return /* @__PURE__ */ React30.createElement(Dialog.Root, { defaultOpen: true, onOpenChange }, /* @__PURE__ */ React30.createElement(Dialog.Portal, null, /* @__PURE__ */ React30.createElement(Dialog.Overlay, null), /* @__PURE__ */ React30.createElement(
|
|
3062
3130
|
Dialog.Content,
|
|
3063
3131
|
{
|
|
3064
3132
|
css: {
|
|
@@ -3067,29 +3135,29 @@ var UploadedFile = ({
|
|
|
3067
3135
|
p: "$10"
|
|
3068
3136
|
}
|
|
3069
3137
|
},
|
|
3070
|
-
/* @__PURE__ */
|
|
3138
|
+
/* @__PURE__ */ React30.createElement(Flex, { direction: "column" }, /* @__PURE__ */ React30.createElement(PDFHeader, null), /* @__PURE__ */ React30.createElement(
|
|
3071
3139
|
DialogRow,
|
|
3072
3140
|
{
|
|
3073
3141
|
css: {
|
|
3074
3142
|
fontFamily: "$sans",
|
|
3075
|
-
bg: "$
|
|
3143
|
+
bg: "$surface_bright",
|
|
3076
3144
|
r: "$1",
|
|
3077
3145
|
outline: "none",
|
|
3078
|
-
border: "1px solid $
|
|
3146
|
+
border: "1px solid $border_bright",
|
|
3079
3147
|
p: "$4 $6",
|
|
3080
3148
|
minHeight: "$11",
|
|
3081
|
-
c: "$
|
|
3149
|
+
c: "$on_primary_high",
|
|
3082
3150
|
fs: "$md",
|
|
3083
3151
|
w: "100%",
|
|
3084
3152
|
"&:focus": {
|
|
3085
|
-
boxShadow: "0 0 0 1px $colors$
|
|
3153
|
+
boxShadow: "0 0 0 1px $colors$primary_default",
|
|
3086
3154
|
border: "1px solid $transparent"
|
|
3087
3155
|
},
|
|
3088
3156
|
mb: 0,
|
|
3089
3157
|
mt: "$6"
|
|
3090
3158
|
}
|
|
3091
3159
|
},
|
|
3092
|
-
/* @__PURE__ */
|
|
3160
|
+
/* @__PURE__ */ React30.createElement(Flex, { direction: "row", css: { flexGrow: "1", maxWidth: "88%" } }, /* @__PURE__ */ React30.createElement(
|
|
3093
3161
|
Text,
|
|
3094
3162
|
{
|
|
3095
3163
|
css: {
|
|
@@ -3099,8 +3167,8 @@ var UploadedFile = ({
|
|
|
3099
3167
|
}
|
|
3100
3168
|
},
|
|
3101
3169
|
fileName
|
|
3102
|
-
), /* @__PURE__ */
|
|
3103
|
-
/* @__PURE__ */
|
|
3170
|
+
), /* @__PURE__ */ React30.createElement(Text, { css: { whiteSpace: "nowrap" } }, ".", ext)),
|
|
3171
|
+
/* @__PURE__ */ React30.createElement(
|
|
3104
3172
|
TrashIcon,
|
|
3105
3173
|
{
|
|
3106
3174
|
onClick: () => setPDFFile(null),
|
|
@@ -3109,7 +3177,7 @@ var UploadedFile = ({
|
|
|
3109
3177
|
}
|
|
3110
3178
|
}
|
|
3111
3179
|
)
|
|
3112
|
-
), /* @__PURE__ */
|
|
3180
|
+
), /* @__PURE__ */ React30.createElement(PDFInfo, null), /* @__PURE__ */ React30.createElement(
|
|
3113
3181
|
SubmitPDF,
|
|
3114
3182
|
{
|
|
3115
3183
|
pdfFile,
|
|
@@ -3125,11 +3193,11 @@ var UploadedFile = ({
|
|
|
3125
3193
|
|
|
3126
3194
|
// src/Prebuilt/components/pdfAnnotator/pdfFileOptions.jsx
|
|
3127
3195
|
function PDFFileOptions({ onOpenChange }) {
|
|
3128
|
-
const [isPDFUrlValid, setIsPDFUrlValid] =
|
|
3129
|
-
const [isValidateProgress, setIsValidateProgress] =
|
|
3130
|
-
const [pdfFile, setPDFFile] =
|
|
3131
|
-
const [pdfURL, setPDFURL] =
|
|
3132
|
-
return !pdfFile ? /* @__PURE__ */
|
|
3196
|
+
const [isPDFUrlValid, setIsPDFUrlValid] = useState15(true);
|
|
3197
|
+
const [isValidateProgress, setIsValidateProgress] = useState15(false);
|
|
3198
|
+
const [pdfFile, setPDFFile] = useState15(null);
|
|
3199
|
+
const [pdfURL, setPDFURL] = useState15("");
|
|
3200
|
+
return !pdfFile ? /* @__PURE__ */ React31.createElement(Dialog.Root, { defaultOpen: true, onOpenChange }, /* @__PURE__ */ React31.createElement(Dialog.Portal, null, /* @__PURE__ */ React31.createElement(Dialog.Overlay, null), /* @__PURE__ */ React31.createElement(
|
|
3133
3201
|
Dialog.Content,
|
|
3134
3202
|
{
|
|
3135
3203
|
css: {
|
|
@@ -3138,7 +3206,7 @@ function PDFFileOptions({ onOpenChange }) {
|
|
|
3138
3206
|
p: "$10"
|
|
3139
3207
|
}
|
|
3140
3208
|
},
|
|
3141
|
-
/* @__PURE__ */
|
|
3209
|
+
/* @__PURE__ */ React31.createElement(Flex, { direction: "column" }, /* @__PURE__ */ React31.createElement(PDFHeader, null), /* @__PURE__ */ React31.createElement(
|
|
3142
3210
|
DialogInputFile,
|
|
3143
3211
|
{
|
|
3144
3212
|
onChange: (target) => {
|
|
@@ -3148,14 +3216,14 @@ function PDFFileOptions({ onOpenChange }) {
|
|
|
3148
3216
|
type: "file",
|
|
3149
3217
|
accept: ".pdf"
|
|
3150
3218
|
}
|
|
3151
|
-
), /* @__PURE__ */
|
|
3219
|
+
), /* @__PURE__ */ React31.createElement(
|
|
3152
3220
|
DialogRow,
|
|
3153
3221
|
{
|
|
3154
3222
|
css: {
|
|
3155
3223
|
m: "$10 0"
|
|
3156
3224
|
}
|
|
3157
3225
|
},
|
|
3158
|
-
/* @__PURE__ */
|
|
3226
|
+
/* @__PURE__ */ React31.createElement(
|
|
3159
3227
|
HorizontalDivider,
|
|
3160
3228
|
{
|
|
3161
3229
|
css: {
|
|
@@ -3163,17 +3231,17 @@ function PDFFileOptions({ onOpenChange }) {
|
|
|
3163
3231
|
}
|
|
3164
3232
|
}
|
|
3165
3233
|
),
|
|
3166
|
-
/* @__PURE__ */
|
|
3234
|
+
/* @__PURE__ */ React31.createElement(
|
|
3167
3235
|
Text,
|
|
3168
3236
|
{
|
|
3169
3237
|
variant: "tiny",
|
|
3170
3238
|
css: {
|
|
3171
|
-
color: "$
|
|
3239
|
+
color: "$on_surface_low"
|
|
3172
3240
|
}
|
|
3173
3241
|
},
|
|
3174
3242
|
"OR"
|
|
3175
3243
|
),
|
|
3176
|
-
/* @__PURE__ */
|
|
3244
|
+
/* @__PURE__ */ React31.createElement(
|
|
3177
3245
|
HorizontalDivider,
|
|
3178
3246
|
{
|
|
3179
3247
|
css: {
|
|
@@ -3181,7 +3249,7 @@ function PDFFileOptions({ onOpenChange }) {
|
|
|
3181
3249
|
}
|
|
3182
3250
|
}
|
|
3183
3251
|
)
|
|
3184
|
-
), /* @__PURE__ */
|
|
3252
|
+
), /* @__PURE__ */ React31.createElement(
|
|
3185
3253
|
Text,
|
|
3186
3254
|
{
|
|
3187
3255
|
variant: "sm",
|
|
@@ -3190,7 +3258,7 @@ function PDFFileOptions({ onOpenChange }) {
|
|
|
3190
3258
|
}
|
|
3191
3259
|
},
|
|
3192
3260
|
"Import from URL"
|
|
3193
|
-
), /* @__PURE__ */
|
|
3261
|
+
), /* @__PURE__ */ React31.createElement(
|
|
3194
3262
|
Input,
|
|
3195
3263
|
{
|
|
3196
3264
|
css: { w: "100%", mb: "$10" },
|
|
@@ -3206,7 +3274,7 @@ function PDFFileOptions({ onOpenChange }) {
|
|
|
3206
3274
|
type: "text",
|
|
3207
3275
|
error: !isPDFUrlValid
|
|
3208
3276
|
}
|
|
3209
|
-
), !isPDFUrlValid && /* @__PURE__ */
|
|
3277
|
+
), !isPDFUrlValid && /* @__PURE__ */ React31.createElement(PdfErrorView, { isPDFUrlValid }), /* @__PURE__ */ React31.createElement(PDFInfo, null), /* @__PURE__ */ React31.createElement(
|
|
3210
3278
|
SubmitPDF,
|
|
3211
3279
|
{
|
|
3212
3280
|
pdfFile,
|
|
@@ -3217,7 +3285,7 @@ function PDFFileOptions({ onOpenChange }) {
|
|
|
3217
3285
|
onOpenChange
|
|
3218
3286
|
}
|
|
3219
3287
|
))
|
|
3220
|
-
))) : /* @__PURE__ */
|
|
3288
|
+
))) : /* @__PURE__ */ React31.createElement(
|
|
3221
3289
|
UploadedFile,
|
|
3222
3290
|
{
|
|
3223
3291
|
pdfFile,
|
|
@@ -3238,7 +3306,7 @@ var MODALS2 = {
|
|
|
3238
3306
|
PDF_SHARE: "pdfShare"
|
|
3239
3307
|
};
|
|
3240
3308
|
function ShareScreenOptions() {
|
|
3241
|
-
const [openModals, setOpenModals] =
|
|
3309
|
+
const [openModals, setOpenModals] = useState16(/* @__PURE__ */ new Set());
|
|
3242
3310
|
const { amIScreenSharing } = useScreenShare3();
|
|
3243
3311
|
const updateState = (modalName, value) => {
|
|
3244
3312
|
setOpenModals((modals) => {
|
|
@@ -3252,7 +3320,7 @@ function ShareScreenOptions() {
|
|
|
3252
3320
|
});
|
|
3253
3321
|
};
|
|
3254
3322
|
const { toggleScreenShare } = useScreenShare3();
|
|
3255
|
-
return /* @__PURE__ */
|
|
3323
|
+
return /* @__PURE__ */ React32.createElement(Fragment5, null, /* @__PURE__ */ React32.createElement(Dropdown.Root, { open: openModals.has(MODALS2.SHARE), onOpenChange: (value) => updateState(MODALS2.SHARE, value) }, /* @__PURE__ */ React32.createElement(Dropdown.Trigger, { asChild: true, "data-testid": "sharing_btn", disabled: amIScreenSharing }, /* @__PURE__ */ React32.createElement(ShareMenuIcon, { disabled: amIScreenSharing }, /* @__PURE__ */ React32.createElement(Tooltip, { title: "Share" }, /* @__PURE__ */ React32.createElement(Box, null, /* @__PURE__ */ React32.createElement(VerticalMenuIcon2, null))))), /* @__PURE__ */ React32.createElement(
|
|
3256
3324
|
Dropdown.Content,
|
|
3257
3325
|
{
|
|
3258
3326
|
sideOffset: 5,
|
|
@@ -3262,7 +3330,7 @@ function ShareScreenOptions() {
|
|
|
3262
3330
|
p: 0
|
|
3263
3331
|
}
|
|
3264
3332
|
},
|
|
3265
|
-
/* @__PURE__ */
|
|
3333
|
+
/* @__PURE__ */ React32.createElement(
|
|
3266
3334
|
Dropdown.Item,
|
|
3267
3335
|
{
|
|
3268
3336
|
css: {
|
|
@@ -3277,10 +3345,10 @@ function ShareScreenOptions() {
|
|
|
3277
3345
|
}
|
|
3278
3346
|
}
|
|
3279
3347
|
},
|
|
3280
|
-
/* @__PURE__ */
|
|
3281
|
-
/* @__PURE__ */
|
|
3348
|
+
/* @__PURE__ */ React32.createElement(Text, { variant: "h6" }, "Start Sharing"),
|
|
3349
|
+
/* @__PURE__ */ React32.createElement(Text, { variant: "sm" }, "Choose what you want to share")
|
|
3282
3350
|
),
|
|
3283
|
-
/* @__PURE__ */
|
|
3351
|
+
/* @__PURE__ */ React32.createElement(
|
|
3284
3352
|
Dropdown.Item,
|
|
3285
3353
|
{
|
|
3286
3354
|
css: {
|
|
@@ -3295,7 +3363,7 @@ function ShareScreenOptions() {
|
|
|
3295
3363
|
}
|
|
3296
3364
|
}
|
|
3297
3365
|
},
|
|
3298
|
-
/* @__PURE__ */
|
|
3366
|
+
/* @__PURE__ */ React32.createElement(
|
|
3299
3367
|
Flex,
|
|
3300
3368
|
{
|
|
3301
3369
|
direction: "column",
|
|
@@ -3304,7 +3372,7 @@ function ShareScreenOptions() {
|
|
|
3304
3372
|
gap: "$6"
|
|
3305
3373
|
}
|
|
3306
3374
|
},
|
|
3307
|
-
/* @__PURE__ */
|
|
3375
|
+
/* @__PURE__ */ React32.createElement(
|
|
3308
3376
|
IconButton,
|
|
3309
3377
|
{
|
|
3310
3378
|
as: "div",
|
|
@@ -3313,13 +3381,13 @@ function ShareScreenOptions() {
|
|
|
3313
3381
|
p: "$6",
|
|
3314
3382
|
display: "flex",
|
|
3315
3383
|
justifyContent: "center",
|
|
3316
|
-
border: "1px solid $
|
|
3384
|
+
border: "1px solid $border_bright",
|
|
3317
3385
|
r: "$2",
|
|
3318
|
-
bg: "$
|
|
3386
|
+
bg: "$surface_brighter",
|
|
3319
3387
|
pb: "0"
|
|
3320
3388
|
}
|
|
3321
3389
|
},
|
|
3322
|
-
/* @__PURE__ */
|
|
3390
|
+
/* @__PURE__ */ React32.createElement(
|
|
3323
3391
|
ScreenShare,
|
|
3324
3392
|
{
|
|
3325
3393
|
width: "100%",
|
|
@@ -3331,19 +3399,19 @@ function ShareScreenOptions() {
|
|
|
3331
3399
|
}
|
|
3332
3400
|
)
|
|
3333
3401
|
),
|
|
3334
|
-
/* @__PURE__ */
|
|
3402
|
+
/* @__PURE__ */ React32.createElement(Flex, { direction: "column", align: "center" }, /* @__PURE__ */ React32.createElement(Text, { variant: "body2" }, "Share Screen"), /* @__PURE__ */ React32.createElement(
|
|
3335
3403
|
Text,
|
|
3336
3404
|
{
|
|
3337
3405
|
variant: "caption",
|
|
3338
3406
|
css: {
|
|
3339
|
-
c: "$
|
|
3407
|
+
c: "$on_surface_low",
|
|
3340
3408
|
textAlign: "center"
|
|
3341
3409
|
}
|
|
3342
3410
|
},
|
|
3343
3411
|
"Share your tab, window or your entire screen"
|
|
3344
3412
|
))
|
|
3345
3413
|
),
|
|
3346
|
-
/* @__PURE__ */
|
|
3414
|
+
/* @__PURE__ */ React32.createElement(
|
|
3347
3415
|
Flex,
|
|
3348
3416
|
{
|
|
3349
3417
|
direction: "column",
|
|
@@ -3352,7 +3420,7 @@ function ShareScreenOptions() {
|
|
|
3352
3420
|
gap: "$6"
|
|
3353
3421
|
}
|
|
3354
3422
|
},
|
|
3355
|
-
/* @__PURE__ */
|
|
3423
|
+
/* @__PURE__ */ React32.createElement(
|
|
3356
3424
|
IconButton,
|
|
3357
3425
|
{
|
|
3358
3426
|
onClick: () => {
|
|
@@ -3363,13 +3431,13 @@ function ShareScreenOptions() {
|
|
|
3363
3431
|
p: "$6",
|
|
3364
3432
|
display: "flex",
|
|
3365
3433
|
justifyContent: "center",
|
|
3366
|
-
border: "$
|
|
3434
|
+
border: "$border_bright 1px solid",
|
|
3367
3435
|
r: "$2",
|
|
3368
|
-
bg: "$
|
|
3436
|
+
bg: "$surface_bright",
|
|
3369
3437
|
pb: "0"
|
|
3370
3438
|
}
|
|
3371
3439
|
},
|
|
3372
|
-
/* @__PURE__ */
|
|
3440
|
+
/* @__PURE__ */ React32.createElement(
|
|
3373
3441
|
PdfShare,
|
|
3374
3442
|
{
|
|
3375
3443
|
width: "100%",
|
|
@@ -3380,41 +3448,30 @@ function ShareScreenOptions() {
|
|
|
3380
3448
|
}
|
|
3381
3449
|
}
|
|
3382
3450
|
),
|
|
3383
|
-
/* @__PURE__ */
|
|
3451
|
+
/* @__PURE__ */ React32.createElement(
|
|
3384
3452
|
Flex,
|
|
3385
3453
|
{
|
|
3386
3454
|
direction: "row",
|
|
3455
|
+
align: "center",
|
|
3387
3456
|
css: {
|
|
3388
3457
|
position: "absolute",
|
|
3389
3458
|
top: "29%",
|
|
3390
3459
|
left: "54%",
|
|
3391
3460
|
padding: "$2 $4",
|
|
3392
3461
|
r: "$2",
|
|
3393
|
-
bg: "$
|
|
3394
|
-
zIndex: "2"
|
|
3462
|
+
bg: "$primary_bright",
|
|
3463
|
+
zIndex: "2",
|
|
3464
|
+
gap: "$2"
|
|
3395
3465
|
}
|
|
3396
3466
|
},
|
|
3397
|
-
/* @__PURE__ */
|
|
3398
|
-
|
|
3399
|
-
{
|
|
3400
|
-
css: {
|
|
3401
|
-
w: "$10",
|
|
3402
|
-
h: "$8",
|
|
3403
|
-
"&:hover": {
|
|
3404
|
-
bg: "$transparent !important",
|
|
3405
|
-
border: "none"
|
|
3406
|
-
}
|
|
3407
|
-
}
|
|
3408
|
-
},
|
|
3409
|
-
/* @__PURE__ */ React31.createElement(StarIcon, null)
|
|
3410
|
-
),
|
|
3411
|
-
/* @__PURE__ */ React31.createElement(
|
|
3467
|
+
/* @__PURE__ */ React32.createElement(StarIcon, { height: 14, width: 14 }),
|
|
3468
|
+
/* @__PURE__ */ React32.createElement(
|
|
3412
3469
|
Text,
|
|
3413
3470
|
{
|
|
3414
3471
|
variant: "xs",
|
|
3415
3472
|
css: {
|
|
3416
3473
|
fontWeight: "$semiBold",
|
|
3417
|
-
c: "$
|
|
3474
|
+
c: "$on_primary_high",
|
|
3418
3475
|
pr: "$4"
|
|
3419
3476
|
}
|
|
3420
3477
|
},
|
|
@@ -3422,12 +3479,12 @@ function ShareScreenOptions() {
|
|
|
3422
3479
|
)
|
|
3423
3480
|
)
|
|
3424
3481
|
),
|
|
3425
|
-
/* @__PURE__ */
|
|
3482
|
+
/* @__PURE__ */ React32.createElement(Flex, { direction: "column", align: "center" }, /* @__PURE__ */ React32.createElement(Text, { variant: "body2" }, "Share PDF"), /* @__PURE__ */ React32.createElement(
|
|
3426
3483
|
Text,
|
|
3427
3484
|
{
|
|
3428
3485
|
variant: "caption",
|
|
3429
3486
|
css: {
|
|
3430
|
-
c: "$
|
|
3487
|
+
c: "$on_surface_low",
|
|
3431
3488
|
textAlign: "center"
|
|
3432
3489
|
}
|
|
3433
3490
|
},
|
|
@@ -3435,7 +3492,7 @@ function ShareScreenOptions() {
|
|
|
3435
3492
|
))
|
|
3436
3493
|
)
|
|
3437
3494
|
),
|
|
3438
|
-
/* @__PURE__ */
|
|
3495
|
+
/* @__PURE__ */ React32.createElement(
|
|
3439
3496
|
Dropdown.Item,
|
|
3440
3497
|
{
|
|
3441
3498
|
css: {
|
|
@@ -3448,7 +3505,7 @@ function ShareScreenOptions() {
|
|
|
3448
3505
|
}
|
|
3449
3506
|
}
|
|
3450
3507
|
},
|
|
3451
|
-
/* @__PURE__ */
|
|
3508
|
+
/* @__PURE__ */ React32.createElement(
|
|
3452
3509
|
Button,
|
|
3453
3510
|
{
|
|
3454
3511
|
variant: "standard",
|
|
@@ -3465,19 +3522,19 @@ function ShareScreenOptions() {
|
|
|
3465
3522
|
"Cancel"
|
|
3466
3523
|
)
|
|
3467
3524
|
)
|
|
3468
|
-
)), openModals.has(MODALS2.PDF_SHARE) && /* @__PURE__ */
|
|
3525
|
+
)), openModals.has(MODALS2.PDF_SHARE) && /* @__PURE__ */ React32.createElement(PDFFileOptions, { onOpenChange: (value) => updateState(MODALS2.PDF_SHARE, value) }));
|
|
3469
3526
|
}
|
|
3470
3527
|
|
|
3471
3528
|
// src/Prebuilt/components/ScreenShare.jsx
|
|
3472
3529
|
var ScreenshareToggle = ({ css = {} }) => {
|
|
3473
|
-
const isAllowedToPublish =
|
|
3530
|
+
const isAllowedToPublish = useHMSStore18(selectIsAllowedToPublish3);
|
|
3474
3531
|
const isAudioOnly = useUISettings(UI_SETTINGS.isAudioOnly);
|
|
3475
3532
|
const { amIScreenSharing, screenShareVideoTrackId: video, toggleScreenShare } = useScreenShare4();
|
|
3476
3533
|
const isVideoScreenshare = amIScreenSharing && !!video;
|
|
3477
3534
|
if (!isAllowedToPublish.screen || !isScreenshareSupported()) {
|
|
3478
3535
|
return null;
|
|
3479
3536
|
}
|
|
3480
|
-
return /* @__PURE__ */
|
|
3537
|
+
return /* @__PURE__ */ React33.createElement(Fragment6, null, /* @__PURE__ */ React33.createElement(Flex, { direction: "row" }, /* @__PURE__ */ React33.createElement(
|
|
3481
3538
|
ScreenShareButton,
|
|
3482
3539
|
{
|
|
3483
3540
|
variant: "standard",
|
|
@@ -3489,24 +3546,24 @@ var ScreenshareToggle = ({ css = {} }) => {
|
|
|
3489
3546
|
toggleScreenShare();
|
|
3490
3547
|
}
|
|
3491
3548
|
},
|
|
3492
|
-
/* @__PURE__ */
|
|
3493
|
-
), /* @__PURE__ */
|
|
3549
|
+
/* @__PURE__ */ React33.createElement(Tooltip, { title: `${!isVideoScreenshare ? "Start" : "Stop"} screen sharing` }, /* @__PURE__ */ React33.createElement(Box, null, /* @__PURE__ */ React33.createElement(ShareScreenIcon2, null)))
|
|
3550
|
+
), /* @__PURE__ */ React33.createElement(ShareScreenOptions, null)));
|
|
3494
3551
|
};
|
|
3495
3552
|
|
|
3496
3553
|
// src/Prebuilt/components/ScreenshareHintModal.jsx
|
|
3497
3554
|
init_define_process_env();
|
|
3498
|
-
import
|
|
3499
|
-
import { useHMSActions as
|
|
3555
|
+
import React34 from "react";
|
|
3556
|
+
import { useHMSActions as useHMSActions14 } from "@100mslive/react-sdk";
|
|
3500
3557
|
var ScreenShareHintModal = ({ onClose }) => {
|
|
3501
|
-
const hmsActions =
|
|
3502
|
-
return /* @__PURE__ */
|
|
3558
|
+
const hmsActions = useHMSActions14();
|
|
3559
|
+
return /* @__PURE__ */ React34.createElement(Dialog.Root, { defaultOpen: true, onOpenChange: (value) => !value && onClose() }, /* @__PURE__ */ React34.createElement(DialogContent, { title: "AudioOnly Screenshare" }, /* @__PURE__ */ React34.createElement(
|
|
3503
3560
|
"img",
|
|
3504
3561
|
{
|
|
3505
3562
|
src: "https://images.app.100ms.live/share-audio.png",
|
|
3506
3563
|
alt: "AudioOnly Screenshare instructions",
|
|
3507
3564
|
width: "100%"
|
|
3508
3565
|
}
|
|
3509
|
-
), /* @__PURE__ */
|
|
3566
|
+
), /* @__PURE__ */ React34.createElement(DialogRow, { justify: "end" }, /* @__PURE__ */ React34.createElement(
|
|
3510
3567
|
Button,
|
|
3511
3568
|
{
|
|
3512
3569
|
variant: "primary",
|
|
@@ -3525,23 +3582,23 @@ var ScreenShareHintModal = ({ onClose }) => {
|
|
|
3525
3582
|
|
|
3526
3583
|
// src/Prebuilt/components/Footer/ChatToggle.jsx
|
|
3527
3584
|
init_define_process_env();
|
|
3528
|
-
import
|
|
3529
|
-
import { selectUnreadHMSMessagesCount, useHMSStore as
|
|
3585
|
+
import React35 from "react";
|
|
3586
|
+
import { selectUnreadHMSMessagesCount, useHMSStore as useHMSStore19 } from "@100mslive/react-sdk";
|
|
3530
3587
|
import { ChatIcon, ChatUnreadIcon } from "@100mslive/react-icons";
|
|
3531
3588
|
var ChatToggle = () => {
|
|
3532
|
-
const countUnreadMessages =
|
|
3589
|
+
const countUnreadMessages = useHMSStore19(selectUnreadHMSMessagesCount);
|
|
3533
3590
|
const isChatOpen = useIsSidepaneTypeOpen(SIDE_PANE_OPTIONS.CHAT);
|
|
3534
3591
|
const toggleChat = useSidepaneToggle(SIDE_PANE_OPTIONS.CHAT);
|
|
3535
3592
|
const isFeatureEnabled = useIsFeatureEnabled(FEATURE_LIST.CHAT);
|
|
3536
3593
|
if (!isFeatureEnabled) {
|
|
3537
3594
|
return;
|
|
3538
3595
|
}
|
|
3539
|
-
return /* @__PURE__ */
|
|
3596
|
+
return /* @__PURE__ */ React35.createElement(Tooltip, { key: "chat", title: `${isChatOpen ? "Close" : "Open"} chat` }, /* @__PURE__ */ React35.createElement(IconButton_default, { onClick: toggleChat, active: !isChatOpen, "data-testid": "chat_btn" }, countUnreadMessages === 0 ? /* @__PURE__ */ React35.createElement(ChatIcon, null) : /* @__PURE__ */ React35.createElement(ChatUnreadIcon, { "data-testid": "chat_unread_btn" })));
|
|
3540
3597
|
};
|
|
3541
3598
|
|
|
3542
3599
|
// src/Prebuilt/components/Footer/ConferencingFooter.jsx
|
|
3543
|
-
var TranscriptionButton =
|
|
3544
|
-
var VirtualBackground =
|
|
3600
|
+
var TranscriptionButton = React36.lazy(() => import("./transcription-PYTSSAOB.js"));
|
|
3601
|
+
var VirtualBackground = React36.lazy(() => import("./VirtualBackground-ZRRE4DUA.js"));
|
|
3545
3602
|
var ScreenshareAudio = () => {
|
|
3546
3603
|
const {
|
|
3547
3604
|
amIScreenSharing,
|
|
@@ -3549,14 +3606,14 @@ var ScreenshareAudio = () => {
|
|
|
3549
3606
|
screenShareAudioTrackId: audio,
|
|
3550
3607
|
toggleScreenShare
|
|
3551
3608
|
} = useScreenShare5();
|
|
3552
|
-
const isAllowedToPublish =
|
|
3609
|
+
const isAllowedToPublish = useHMSStore20(selectIsAllowedToPublish4);
|
|
3553
3610
|
const isAudioScreenshare = amIScreenSharing && !video && !!audio;
|
|
3554
|
-
const [showModal, setShowModal] =
|
|
3611
|
+
const [showModal, setShowModal] = useState17(false);
|
|
3555
3612
|
const isFeatureEnabled = useIsFeatureEnabled(FEATURE_LIST.AUDIO_ONLY_SCREENSHARE);
|
|
3556
3613
|
if (!isFeatureEnabled || !isAllowedToPublish.screen || !isScreenshareSupported()) {
|
|
3557
3614
|
return null;
|
|
3558
3615
|
}
|
|
3559
|
-
return /* @__PURE__ */
|
|
3616
|
+
return /* @__PURE__ */ React36.createElement(Fragment7, null, /* @__PURE__ */ React36.createElement(Tooltip, { title: `${!isAudioScreenshare ? "Start" : "Stop"} audio sharing`, key: "shareAudio" }, /* @__PURE__ */ React36.createElement(
|
|
3560
3617
|
IconButton_default,
|
|
3561
3618
|
{
|
|
3562
3619
|
active: !isAudioScreenshare,
|
|
@@ -3569,12 +3626,12 @@ var ScreenshareAudio = () => {
|
|
|
3569
3626
|
},
|
|
3570
3627
|
"data-testid": "screenshare_audio"
|
|
3571
3628
|
},
|
|
3572
|
-
/* @__PURE__ */
|
|
3573
|
-
)), showModal && /* @__PURE__ */
|
|
3629
|
+
/* @__PURE__ */ React36.createElement(MusicIcon, null)
|
|
3630
|
+
)), showModal && /* @__PURE__ */ React36.createElement(ScreenShareHintModal, { onClose: () => setShowModal(false) }));
|
|
3574
3631
|
};
|
|
3575
3632
|
var ConferencingFooter = () => {
|
|
3576
3633
|
const isMobile = useMedia6(config.media.md);
|
|
3577
|
-
return /* @__PURE__ */
|
|
3634
|
+
return /* @__PURE__ */ React36.createElement(Footer.Root, null, /* @__PURE__ */ React36.createElement(Footer.Left, null, /* @__PURE__ */ React36.createElement(ScreenshareAudio, null), /* @__PURE__ */ React36.createElement(Playlist, { type: HMSPlaylistType4.audio }), /* @__PURE__ */ React36.createElement(Playlist, { type: HMSPlaylistType4.video }), /* @__PURE__ */ React36.createElement(Suspense2, { fallback: "" }, /* @__PURE__ */ React36.createElement(VirtualBackground, null)), FeatureFlags.enableTranscription ? /* @__PURE__ */ React36.createElement(TranscriptionButton, null) : null, /* @__PURE__ */ React36.createElement(
|
|
3578
3635
|
Flex,
|
|
3579
3636
|
{
|
|
3580
3637
|
align: "center",
|
|
@@ -3586,16 +3643,16 @@ var ConferencingFooter = () => {
|
|
|
3586
3643
|
}
|
|
3587
3644
|
}
|
|
3588
3645
|
},
|
|
3589
|
-
isMobile && /* @__PURE__ */
|
|
3590
|
-
/* @__PURE__ */
|
|
3591
|
-
)), /* @__PURE__ */
|
|
3646
|
+
isMobile && /* @__PURE__ */ React36.createElement(EmojiReaction, null),
|
|
3647
|
+
/* @__PURE__ */ React36.createElement(MetaActions_default, { isMobile: true })
|
|
3648
|
+
)), /* @__PURE__ */ React36.createElement(Footer.Center, null, /* @__PURE__ */ React36.createElement(AudioVideoToggle, null), /* @__PURE__ */ React36.createElement(ScreenshareToggle, null), /* @__PURE__ */ React36.createElement(PIP, null), /* @__PURE__ */ React36.createElement(MoreSettings, null), /* @__PURE__ */ React36.createElement(Flex, { align: "center", css: { display: "none", "@md": { display: "flex" } } }, /* @__PURE__ */ React36.createElement(ChatToggle, null)), /* @__PURE__ */ React36.createElement(LeaveRoom, null)), /* @__PURE__ */ React36.createElement(Footer.Right, null, !isMobile && /* @__PURE__ */ React36.createElement(EmojiReaction, null), /* @__PURE__ */ React36.createElement(MetaActions_default, null), /* @__PURE__ */ React36.createElement(ChatToggle, null)));
|
|
3592
3649
|
};
|
|
3593
3650
|
|
|
3594
3651
|
// src/Prebuilt/components/Footer/StreamingFooter.jsx
|
|
3595
3652
|
init_define_process_env();
|
|
3596
|
-
import
|
|
3653
|
+
import React37 from "react";
|
|
3597
3654
|
var StreamingFooter = () => {
|
|
3598
|
-
return /* @__PURE__ */
|
|
3655
|
+
return /* @__PURE__ */ React37.createElement(
|
|
3599
3656
|
Footer.Root,
|
|
3600
3657
|
{
|
|
3601
3658
|
css: {
|
|
@@ -3605,7 +3662,7 @@ var StreamingFooter = () => {
|
|
|
3605
3662
|
}
|
|
3606
3663
|
}
|
|
3607
3664
|
},
|
|
3608
|
-
/* @__PURE__ */
|
|
3665
|
+
/* @__PURE__ */ React37.createElement(
|
|
3609
3666
|
Footer.Left,
|
|
3610
3667
|
{
|
|
3611
3668
|
css: {
|
|
@@ -3615,9 +3672,9 @@ var StreamingFooter = () => {
|
|
|
3615
3672
|
}
|
|
3616
3673
|
}
|
|
3617
3674
|
},
|
|
3618
|
-
/* @__PURE__ */
|
|
3675
|
+
/* @__PURE__ */ React37.createElement(AudioVideoToggle, null)
|
|
3619
3676
|
),
|
|
3620
|
-
/* @__PURE__ */
|
|
3677
|
+
/* @__PURE__ */ React37.createElement(
|
|
3621
3678
|
Footer.Center,
|
|
3622
3679
|
{
|
|
3623
3680
|
css: {
|
|
@@ -3626,9 +3683,9 @@ var StreamingFooter = () => {
|
|
|
3626
3683
|
}
|
|
3627
3684
|
}
|
|
3628
3685
|
},
|
|
3629
|
-
/* @__PURE__ */
|
|
3630
|
-
/* @__PURE__ */
|
|
3631
|
-
/* @__PURE__ */
|
|
3686
|
+
/* @__PURE__ */ React37.createElement(ScreenshareToggle, { css: { "@sm": { display: "none" } } }),
|
|
3687
|
+
/* @__PURE__ */ React37.createElement(Box, { css: { "@md": { display: "none" } } }, /* @__PURE__ */ React37.createElement(PIP, null)),
|
|
3688
|
+
/* @__PURE__ */ React37.createElement(
|
|
3632
3689
|
Box,
|
|
3633
3690
|
{
|
|
3634
3691
|
css: {
|
|
@@ -3640,34 +3697,34 @@ var StreamingFooter = () => {
|
|
|
3640
3697
|
}
|
|
3641
3698
|
}
|
|
3642
3699
|
},
|
|
3643
|
-
/* @__PURE__ */
|
|
3700
|
+
/* @__PURE__ */ React37.createElement(StreamActions, null)
|
|
3644
3701
|
),
|
|
3645
|
-
/* @__PURE__ */
|
|
3646
|
-
/* @__PURE__ */
|
|
3647
|
-
/* @__PURE__ */
|
|
3702
|
+
/* @__PURE__ */ React37.createElement(MoreSettings, null),
|
|
3703
|
+
/* @__PURE__ */ React37.createElement(Box, { css: { "@md": { display: "none" } } }, /* @__PURE__ */ React37.createElement(LeaveRoom, null)),
|
|
3704
|
+
/* @__PURE__ */ React37.createElement(Flex, { align: "center", css: { display: "none", "@md": { display: "flex" } } }, /* @__PURE__ */ React37.createElement(ChatToggle, null))
|
|
3648
3705
|
),
|
|
3649
|
-
/* @__PURE__ */
|
|
3706
|
+
/* @__PURE__ */ React37.createElement(Footer.Right, null, /* @__PURE__ */ React37.createElement(EmojiReaction, null), /* @__PURE__ */ React37.createElement(MetaActions_default, null), /* @__PURE__ */ React37.createElement(ChatToggle, null))
|
|
3650
3707
|
);
|
|
3651
3708
|
};
|
|
3652
3709
|
|
|
3653
3710
|
// src/Prebuilt/components/Footer.jsx
|
|
3654
3711
|
var Footer2 = () => {
|
|
3655
|
-
return isStreamingKit() ? /* @__PURE__ */
|
|
3712
|
+
return isStreamingKit() ? /* @__PURE__ */ React38.createElement(StreamingFooter, null) : /* @__PURE__ */ React38.createElement(ConferencingFooter, null);
|
|
3656
3713
|
};
|
|
3657
3714
|
|
|
3658
3715
|
// src/Prebuilt/components/RoleChangeRequestModal.jsx
|
|
3659
3716
|
init_define_process_env();
|
|
3660
|
-
import
|
|
3661
|
-
import { selectRoleChangeRequest, useHMSActions as
|
|
3717
|
+
import React39 from "react";
|
|
3718
|
+
import { selectRoleChangeRequest, useHMSActions as useHMSActions15, useHMSStore as useHMSStore21 } from "@100mslive/react-sdk";
|
|
3662
3719
|
var RoleChangeRequestModal = () => {
|
|
3663
3720
|
var _a, _b;
|
|
3664
|
-
const hmsActions =
|
|
3721
|
+
const hmsActions = useHMSActions15();
|
|
3665
3722
|
const isHeadless = useIsHeadless();
|
|
3666
|
-
const roleChangeRequest =
|
|
3723
|
+
const roleChangeRequest = useHMSStore21(selectRoleChangeRequest);
|
|
3667
3724
|
if (!(roleChangeRequest == null ? void 0 : roleChangeRequest.role) || isHeadless) {
|
|
3668
3725
|
return null;
|
|
3669
3726
|
}
|
|
3670
|
-
return /* @__PURE__ */
|
|
3727
|
+
return /* @__PURE__ */ React39.createElement(
|
|
3671
3728
|
RequestDialog,
|
|
3672
3729
|
{
|
|
3673
3730
|
title: "Role Change Request",
|
|
@@ -3687,12 +3744,12 @@ var Conference = () => {
|
|
|
3687
3744
|
const navigate = useNavigation();
|
|
3688
3745
|
const { roomId, role } = useParams();
|
|
3689
3746
|
const isHeadless = useIsHeadless();
|
|
3690
|
-
const roomState =
|
|
3747
|
+
const roomState = useHMSStore22(selectRoomState);
|
|
3691
3748
|
const prevState = usePrevious(roomState);
|
|
3692
|
-
const isConnectedToRoom =
|
|
3693
|
-
const hmsActions =
|
|
3694
|
-
const [hideControls, setHideControls] =
|
|
3695
|
-
const dropdownList =
|
|
3749
|
+
const isConnectedToRoom = useHMSStore22(selectIsConnectedToRoom2);
|
|
3750
|
+
const hmsActions = useHMSActions16();
|
|
3751
|
+
const [hideControls, setHideControls] = useState18(false);
|
|
3752
|
+
const dropdownList = useHMSStore22(selectAppData3(APP_DATA.dropdownList));
|
|
3696
3753
|
const skipPreview = useSkipPreview();
|
|
3697
3754
|
const { showPreview } = useHMSPrebuiltContext();
|
|
3698
3755
|
const authTokenInAppData = useAuthToken();
|
|
@@ -3700,6 +3757,7 @@ var Conference = () => {
|
|
|
3700
3757
|
const footerRef = useRef7();
|
|
3701
3758
|
const dropdownListRef = useRef7();
|
|
3702
3759
|
const performAutoHide = hideControls && (isAndroid || isIOS || isIPadOS);
|
|
3760
|
+
const [isHLSStarted] = useSetAppDataByKey(APP_DATA.hlsStarted);
|
|
3703
3761
|
const toggleControls = () => {
|
|
3704
3762
|
var _a2;
|
|
3705
3763
|
if (((_a2 = dropdownListRef.current) == null ? void 0 : _a2.length) === 0) {
|
|
@@ -3756,9 +3814,12 @@ var Conference = () => {
|
|
|
3756
3814
|
}
|
|
3757
3815
|
}, [isHeadless, hmsActions]);
|
|
3758
3816
|
if (!isConnectedToRoom) {
|
|
3759
|
-
return /* @__PURE__ */
|
|
3817
|
+
return /* @__PURE__ */ React40.createElement(FullPageProgress_default, { loadingText: "Joining..." });
|
|
3818
|
+
}
|
|
3819
|
+
if (isHLSStarted) {
|
|
3820
|
+
return /* @__PURE__ */ React40.createElement(FullPageProgress_default, { loadingText: "Starting live stream..." });
|
|
3760
3821
|
}
|
|
3761
|
-
return /* @__PURE__ */
|
|
3822
|
+
return /* @__PURE__ */ React40.createElement(Flex, { css: { size: "100%", overflow: "hidden" }, direction: "column" }, !isHeadless && /* @__PURE__ */ React40.createElement(
|
|
3762
3823
|
Box,
|
|
3763
3824
|
{
|
|
3764
3825
|
ref: headerRef,
|
|
@@ -3772,8 +3833,8 @@ var Conference = () => {
|
|
|
3772
3833
|
},
|
|
3773
3834
|
"data-testid": "header"
|
|
3774
3835
|
},
|
|
3775
|
-
/* @__PURE__ */
|
|
3776
|
-
), /* @__PURE__ */
|
|
3836
|
+
/* @__PURE__ */ React40.createElement(Header, null)
|
|
3837
|
+
), /* @__PURE__ */ React40.createElement(
|
|
3777
3838
|
Box,
|
|
3778
3839
|
{
|
|
3779
3840
|
css: {
|
|
@@ -3786,8 +3847,8 @@ var Conference = () => {
|
|
|
3786
3847
|
"data-testid": "conferencing",
|
|
3787
3848
|
onClick: toggleControls
|
|
3788
3849
|
},
|
|
3789
|
-
/* @__PURE__ */
|
|
3790
|
-
), !isHeadless && /* @__PURE__ */
|
|
3850
|
+
/* @__PURE__ */ React40.createElement(ConferenceMainView, null)
|
|
3851
|
+
), !isHeadless && /* @__PURE__ */ React40.createElement(
|
|
3791
3852
|
Box,
|
|
3792
3853
|
{
|
|
3793
3854
|
ref: footerRef,
|
|
@@ -3802,11 +3863,11 @@ var Conference = () => {
|
|
|
3802
3863
|
},
|
|
3803
3864
|
"data-testid": "footer"
|
|
3804
3865
|
},
|
|
3805
|
-
/* @__PURE__ */
|
|
3806
|
-
), /* @__PURE__ */
|
|
3866
|
+
/* @__PURE__ */ React40.createElement(Footer2, null)
|
|
3867
|
+
), /* @__PURE__ */ React40.createElement(RoleChangeRequestModal, null), /* @__PURE__ */ React40.createElement(HLSFailureModal, null));
|
|
3807
3868
|
};
|
|
3808
3869
|
var conference_default = Conference;
|
|
3809
3870
|
export {
|
|
3810
3871
|
conference_default as default
|
|
3811
3872
|
};
|
|
3812
|
-
//# sourceMappingURL=conference-
|
|
3873
|
+
//# sourceMappingURL=conference-5TDUAQ6K.js.map
|