@100mslive/roomkit-react 0.1.1 → 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-G32BDM5F.js → ActiveSpeakerView-4XPIRZOK.js} +6 -6
- package/dist/{ActiveSpeakerView-LW4WDBC6.css → ActiveSpeakerView-ADEYHQMU.css} +2 -2
- package/dist/{PinnedTrackView-OAA4HAID.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/{HLSView-DIQQF2PP.css → HLSView-DWEEMZ6Z.css} +2 -2
- package/dist/{HLSView-DIQQF2PP.css.map → HLSView-DWEEMZ6Z.css.map} +2 -2
- package/dist/{HLSView-ZYNT3HJD.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-OAA4HAID.css → PinnedTrackView-5DPVVOZW.css} +2 -2
- package/dist/{conference-LE4T3ZNF.css.map → PinnedTrackView-5DPVVOZW.css.map} +2 -2
- package/dist/{PinnedTrackView-GTXL2UTS.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-HWU22Q6S.js → VirtualBackground-ZRRE4DUA.js} +4 -3
- package/dist/{VirtualBackground-HWU22Q6S.js.map → VirtualBackground-ZRRE4DUA.js.map} +2 -2
- package/dist/{chunk-4VY5NUK7.js → chunk-4ISMCWQA.js} +49 -146
- package/dist/chunk-4ISMCWQA.js.map +7 -0
- package/dist/{chunk-TEHZYXCJ.js → chunk-KKLZ7K2L.js} +167 -164
- package/dist/chunk-KKLZ7K2L.js.map +7 -0
- package/dist/chunk-LUND6FLY.js +8626 -0
- 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-A2PNZIK7.js → chunk-THORW2WT.js} +4 -4
- package/dist/{chunk-A2PNZIK7.js.map → chunk-THORW2WT.js.map} +1 -1
- package/dist/{conference-YHO2J3Z6.js → conference-5TDUAQ6K.js} +593 -532
- package/dist/conference-5TDUAQ6K.js.map +7 -0
- package/dist/{conference-LE4T3ZNF.css → conference-BDCDGBIS.css} +2 -2
- package/dist/{ActiveSpeakerView-LW4WDBC6.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 +2952 -2662
- 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 +750 -484
- package/dist/meta.esbuild.json +844 -581
- package/dist/{transcription-L6VBK75V.js → transcription-PYTSSAOB.js} +3 -3
- package/package.json +13 -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 +9 -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-ZYNT3HJD.js.map +0 -7
- package/dist/Theme/themes.d.ts +0 -64
- package/dist/chunk-4VY5NUK7.js.map +0 -7
- package/dist/chunk-BSQIN5RC.js +0 -65
- package/dist/chunk-BSQIN5RC.js.map +0 -7
- package/dist/chunk-TEHZYXCJ.js.map +0 -7
- package/dist/chunk-ZET2HMGS.js +0 -8331
- package/dist/chunk-ZET2HMGS.js.map +0 -7
- package/dist/conference-YHO2J3Z6.js.map +0 -7
- package/src/Prebuilt/components/Preview/PreviewName.jsx +0 -37
- package/src/Prebuilt/components/Streaming/RTMPIcon.jsx +0 -69
- 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-G32BDM5F.js.map → ActiveSpeakerView-4XPIRZOK.js.map} +0 -0
- /package/dist/{PinnedTrackView-GTXL2UTS.js.map → PinnedTrackView-GGTCNH5V.js.map} +0 -0
- /package/dist/{transcription-L6VBK75V.js.map → transcription-PYTSSAOB.js.map} +0 -0
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import React, { Fragment, useCallback, useEffect, useState } from 'react';
|
|
2
|
-
import {
|
|
2
|
+
import { selectRoomID, useHMSActions, useHMSStore, useRecordingStreaming } from '@100mslive/react-sdk';
|
|
3
3
|
import {
|
|
4
4
|
EndStreamIcon,
|
|
5
5
|
EyeOpenIcon,
|
|
@@ -14,7 +14,6 @@ import { Box, Button, Flex, Loading, Text } from '../../../';
|
|
|
14
14
|
import { Container, ContentBody, ContentHeader, ErrorText, RecordStream } from './Common';
|
|
15
15
|
import { useSetAppDataByKey } from '../AppData/useUISettings';
|
|
16
16
|
import { useFilteredRoles } from '../../common/hooks';
|
|
17
|
-
import { getDefaultMeetingUrl } from '../../common/utils';
|
|
18
17
|
import { APP_DATA } from '../../common/constants';
|
|
19
18
|
|
|
20
19
|
const getCardData = (roleName, roomId) => {
|
|
@@ -57,19 +56,19 @@ const Card = ({ title, icon, link, content, isHLSRunning, order = 0 }) => {
|
|
|
57
56
|
<Box
|
|
58
57
|
key={title}
|
|
59
58
|
css={{
|
|
60
|
-
backgroundColor: '$
|
|
59
|
+
backgroundColor: '$surface_bright',
|
|
61
60
|
padding: '$10',
|
|
62
61
|
order,
|
|
63
62
|
borderRadius: '$2',
|
|
64
63
|
}}
|
|
65
64
|
>
|
|
66
|
-
<Flex align="center" gap="2" css={{ color: '$
|
|
65
|
+
<Flex align="center" gap="2" css={{ color: '$primary_bright' }}>
|
|
67
66
|
{icon}
|
|
68
67
|
<Text variant="h6" css={{ fontWeight: '$semiBold' }}>
|
|
69
68
|
{title}
|
|
70
69
|
</Text>
|
|
71
70
|
</Flex>
|
|
72
|
-
<Text variant="sm" css={{ color: '$
|
|
71
|
+
<Text variant="sm" css={{ color: '$on_surface_medium', mt: '$6' }}>
|
|
73
72
|
{content}
|
|
74
73
|
</Text>
|
|
75
74
|
<Button
|
|
@@ -128,7 +127,6 @@ const StartHLS = () => {
|
|
|
128
127
|
const [record, setRecord] = useState(false);
|
|
129
128
|
const [error, setError] = useState(false);
|
|
130
129
|
const hmsActions = useHMSActions();
|
|
131
|
-
const recordingUrl = useHMSStore(selectAppData(APP_DATA.recordingUrl));
|
|
132
130
|
const [isHLSStarted, setHLSStarted] = useSetAppDataByKey(APP_DATA.hlsStarted);
|
|
133
131
|
const startHLS = useCallback(
|
|
134
132
|
async variants => {
|
|
@@ -143,15 +141,11 @@ const StartHLS = () => {
|
|
|
143
141
|
recording: { hlsVod: record, singleFilePerLayer: record },
|
|
144
142
|
});
|
|
145
143
|
} catch (error) {
|
|
146
|
-
if (error.message.includes('invalid input')) {
|
|
147
|
-
await startHLS([{ meetingURL: recordingUrl || getDefaultMeetingUrl() }]);
|
|
148
|
-
return;
|
|
149
|
-
}
|
|
150
144
|
setHLSStarted(false);
|
|
151
145
|
setError(error.message);
|
|
152
146
|
}
|
|
153
147
|
},
|
|
154
|
-
[hmsActions, record, isHLSStarted, setHLSStarted
|
|
148
|
+
[hmsActions, record, isHLSStarted, setHLSStarted],
|
|
155
149
|
);
|
|
156
150
|
|
|
157
151
|
return (
|
|
@@ -174,7 +168,7 @@ const StartHLS = () => {
|
|
|
174
168
|
<Text>
|
|
175
169
|
<InfoIcon width={16} height={16} />
|
|
176
170
|
</Text>
|
|
177
|
-
<Text variant="tiny" color="$
|
|
171
|
+
<Text variant="tiny" color="$on_surface_medium" css={{ mx: '$8' }}>
|
|
178
172
|
You cannot start recording once the stream starts, you will have to stop the stream to enable recording.
|
|
179
173
|
</Text>
|
|
180
174
|
</Flex>
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import React, { useEffect, useRef, useState } from 'react';
|
|
2
|
-
import {
|
|
2
|
+
import { useHMSActions, useRecordingStreaming } from '@100mslive/react-sdk';
|
|
3
3
|
import { AddCircleIcon, EndStreamIcon, GoLiveIcon, PencilIcon, SettingsIcon, TrashIcon } from '@100mslive/react-icons';
|
|
4
4
|
import { Accordion, Box, Button, Flex, Input, Label, Loading, Text } from '../../../';
|
|
5
5
|
import { Container, ContentBody, ContentHeader, ErrorText, RecordStream } from './Common';
|
|
@@ -37,7 +37,6 @@ const StartRTMP = () => {
|
|
|
37
37
|
],
|
|
38
38
|
);
|
|
39
39
|
const hmsActions = useHMSActions();
|
|
40
|
-
const recordingUrl = useHMSStore(selectAppData(APP_DATA.recordingUrl));
|
|
41
40
|
const [error, setError] = useState(false);
|
|
42
41
|
const [record, setRecord] = useState(false);
|
|
43
42
|
const [resolution, setResolution] = useState(RTMP_RECORD_DEFAULT_RESOLUTION);
|
|
@@ -61,7 +60,7 @@ const StartRTMP = () => {
|
|
|
61
60
|
value={rtmp.id}
|
|
62
61
|
key={rtmp.id}
|
|
63
62
|
css={{
|
|
64
|
-
border: '2px solid $
|
|
63
|
+
border: '2px solid $surface_bright !important',
|
|
65
64
|
r: '$1',
|
|
66
65
|
my: '$4',
|
|
67
66
|
}}
|
|
@@ -131,7 +130,6 @@ const StartRTMP = () => {
|
|
|
131
130
|
const urls = hasRTMPURL ? rtmpStreams.map(value => `${value.rtmpURL}/${value.streamKey}`) : [];
|
|
132
131
|
await hmsActions.startRTMPOrRecording({
|
|
133
132
|
rtmpURLs: urls,
|
|
134
|
-
meetingURL: recordingUrl,
|
|
135
133
|
resolution: getResolution(resolution),
|
|
136
134
|
record: record,
|
|
137
135
|
});
|
|
@@ -201,7 +199,7 @@ const ActionIcon = ({ icon: Icon, onClick }) => {
|
|
|
201
199
|
|
|
202
200
|
const FormLabel = ({ id, children }) => {
|
|
203
201
|
return (
|
|
204
|
-
<Label htmlFor={id} css={{ color: '$
|
|
202
|
+
<Label htmlFor={id} css={{ color: '$on_surface_high', my: '$4', fontSize: '$sm' }}>
|
|
205
203
|
{children}
|
|
206
204
|
</Label>
|
|
207
205
|
);
|
|
@@ -261,7 +259,7 @@ const RTMPForm = ({ rtmpURL, id, streamKey, setRTMPStreams, testId }) => {
|
|
|
261
259
|
|
|
262
260
|
const Asterik = () => {
|
|
263
261
|
return (
|
|
264
|
-
<Text variant="sm" as="span" css={{ color: '$
|
|
262
|
+
<Text variant="sm" as="span" css={{ color: '$alert_error_default', mx: '$2' }}>
|
|
265
263
|
*
|
|
266
264
|
</Text>
|
|
267
265
|
);
|
|
@@ -4,9 +4,9 @@ import { ColoredHandIcon, CrossIcon, GoLiveIcon } from '@100mslive/react-icons';
|
|
|
4
4
|
import { Box, Flex } from '../../../Layout';
|
|
5
5
|
import { Text } from '../../../Text';
|
|
6
6
|
import IconButton from '../../IconButton';
|
|
7
|
+
import RTMPIcon from '../../images/rtmp.png';
|
|
7
8
|
import { StreamCard } from './Common';
|
|
8
9
|
import { HLSStreaming } from './HLSStreaming';
|
|
9
|
-
import { RTMPIcon } from './RTMPIcon';
|
|
10
10
|
import { RTMPStreaming } from './RTMPStreaming';
|
|
11
11
|
import { useSidepaneToggle } from '../AppData/useSidepane';
|
|
12
12
|
import { SIDE_PANE_OPTIONS } from '../../common/constants';
|
|
@@ -30,7 +30,7 @@ export const StreamingLanding = () => {
|
|
|
30
30
|
css={{
|
|
31
31
|
alignSelf: 'center',
|
|
32
32
|
p: '$4',
|
|
33
|
-
bg: '$
|
|
33
|
+
bg: '$surface_bright',
|
|
34
34
|
r: '$round',
|
|
35
35
|
}}
|
|
36
36
|
>
|
|
@@ -44,7 +44,7 @@ export const StreamingLanding = () => {
|
|
|
44
44
|
<CrossIcon />
|
|
45
45
|
</IconButton>
|
|
46
46
|
</Flex>
|
|
47
|
-
<Text variant="tiny" color="$
|
|
47
|
+
<Text variant="tiny" color="$on_surface_medium">
|
|
48
48
|
Start Streaming
|
|
49
49
|
</Text>
|
|
50
50
|
{permissions?.hlsStreaming && (
|
|
@@ -66,7 +66,7 @@ export const StreamingLanding = () => {
|
|
|
66
66
|
onClick={() => {
|
|
67
67
|
setShowRTMP(true);
|
|
68
68
|
}}
|
|
69
|
-
|
|
69
|
+
imgSrc={RTMPIcon}
|
|
70
70
|
/>
|
|
71
71
|
)}
|
|
72
72
|
{showHLS && <HLSStreaming onBack={() => setShowHLS(false)} />}
|
|
@@ -76,7 +76,7 @@ const PinActions = ({ audioTrackID, videoTrackID }) => {
|
|
|
76
76
|
onClick={() => (isTilePinned ? setPinnedTrackId() : setPinnedTrackId(videoTrackID || audioTrackID))}
|
|
77
77
|
>
|
|
78
78
|
<PinIcon />
|
|
79
|
-
<span>{
|
|
79
|
+
<span>{isTilePinned ? 'Unpin' : 'Pin'} Tile for myself</span>
|
|
80
80
|
</StyledMenuTile.ItemButton>
|
|
81
81
|
</>
|
|
82
82
|
);
|
|
@@ -142,7 +142,7 @@ const TileMenu = ({ audioTrackID, videoTrackID, peerID, isScreenshare = false })
|
|
|
142
142
|
data-testid={isVideoEnabled ? 'mute_video_participant_btn' : 'unmute_video_participant_btn'}
|
|
143
143
|
>
|
|
144
144
|
{isVideoEnabled ? <VideoOnIcon /> : <VideoOffIcon />}
|
|
145
|
-
<span>{
|
|
145
|
+
<span>{isVideoEnabled ? 'Mute' : 'Request Unmute'}</span>
|
|
146
146
|
</StyledMenuTile.ItemButton>
|
|
147
147
|
) : null}
|
|
148
148
|
{toggleAudio ? (
|
|
@@ -151,7 +151,7 @@ const TileMenu = ({ audioTrackID, videoTrackID, peerID, isScreenshare = false })
|
|
|
151
151
|
data-testid={isVideoEnabled ? 'mute_audio_participant_btn' : 'unmute_audio_participant_btn'}
|
|
152
152
|
>
|
|
153
153
|
{isAudioEnabled ? <MicOnIcon /> : <MicOffIcon />}
|
|
154
|
-
<span>{
|
|
154
|
+
<span>{isAudioEnabled ? 'Mute' : 'Request Unmute'}</span>
|
|
155
155
|
</StyledMenuTile.ItemButton>
|
|
156
156
|
) : null}
|
|
157
157
|
{audioTrackID ? (
|
|
@@ -211,7 +211,7 @@ const SimulcastLayers = ({ trackId }) => {
|
|
|
211
211
|
const currentLayer = track.layerDefinitions.find(layer => layer.layer === track.layer);
|
|
212
212
|
return (
|
|
213
213
|
<Fragment>
|
|
214
|
-
<StyledMenuTile.ItemButton css={{ color: '$
|
|
214
|
+
<StyledMenuTile.ItemButton css={{ color: '$on_surface_medium', cursor: 'default' }}>
|
|
215
215
|
Select maximum resolution
|
|
216
216
|
</StyledMenuTile.ItemButton>
|
|
217
217
|
{track.layerDefinitions.map(layer => {
|
|
@@ -239,14 +239,14 @@ const SimulcastLayers = ({ trackId }) => {
|
|
|
239
239
|
>
|
|
240
240
|
{layer.layer}
|
|
241
241
|
</Text>
|
|
242
|
-
<Text as="span" variant="xs" css={{ color: '$
|
|
242
|
+
<Text as="span" variant="xs" css={{ color: '$on_surface_medium' }}>
|
|
243
243
|
{layer.resolution.width}x{layer.resolution.height}
|
|
244
244
|
</Text>
|
|
245
245
|
</StyledMenuTile.ItemButton>
|
|
246
246
|
);
|
|
247
247
|
})}
|
|
248
248
|
<StyledMenuTile.ItemButton>
|
|
249
|
-
<Text as="span" variant="xs" css={{ color: '$
|
|
249
|
+
<Text as="span" variant="xs" css={{ color: '$on_surface_medium' }}>
|
|
250
250
|
Currently streaming:
|
|
251
251
|
<Text
|
|
252
252
|
as="span"
|
|
@@ -254,7 +254,7 @@ const SimulcastLayers = ({ trackId }) => {
|
|
|
254
254
|
css={{
|
|
255
255
|
fontWeight: '$semiBold',
|
|
256
256
|
textTransform: 'capitalize',
|
|
257
|
-
color: '$
|
|
257
|
+
color: '$on_surface_medium',
|
|
258
258
|
ml: '$2',
|
|
259
259
|
}}
|
|
260
260
|
>
|
|
@@ -1,31 +1,23 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
import { selectAppData } from '@100mslive/react-sdk';
|
|
3
2
|
import { ChatIcon, ConnectivityIcon, HandIcon, PersonIcon, PoorConnectivityIcon } from '@100mslive/react-icons';
|
|
4
3
|
import { Button } from '../../../Button';
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
7
|
-
|
|
8
|
-
const isChatOpen = () => {
|
|
9
|
-
return hmsStore.getState(selectAppData(APP_DATA.sidePane)) === SIDE_PANE_OPTIONS.CHAT;
|
|
10
|
-
};
|
|
4
|
+
import { useIsSidepaneTypeOpen, useSidepaneToggle } from '../AppData/useSidepane';
|
|
5
|
+
import { SIDE_PANE_OPTIONS } from '../../common/constants';
|
|
11
6
|
|
|
12
7
|
const ChatAction = React.forwardRef((_, ref) => {
|
|
8
|
+
const toggleChat = useSidepaneToggle(SIDE_PANE_OPTIONS.CHAT);
|
|
9
|
+
const isChatOpen = useIsSidepaneTypeOpen(SIDE_PANE_OPTIONS.CHAT);
|
|
10
|
+
|
|
11
|
+
if (isChatOpen) {
|
|
12
|
+
return null;
|
|
13
|
+
}
|
|
14
|
+
|
|
13
15
|
return (
|
|
14
|
-
<Button
|
|
15
|
-
outlined
|
|
16
|
-
as="div"
|
|
17
|
-
variant="standard"
|
|
18
|
-
css={{ w: 'max-content' }}
|
|
19
|
-
onClick={() => {
|
|
20
|
-
hmsActions.setAppData(APP_DATA.sidePane, SIDE_PANE_OPTIONS.CHAT);
|
|
21
|
-
}}
|
|
22
|
-
ref={ref}
|
|
23
|
-
>
|
|
16
|
+
<Button outlined as="div" variant="standard" css={{ w: 'max-content' }} onClick={toggleChat} ref={ref}>
|
|
24
17
|
Open Chat
|
|
25
18
|
</Button>
|
|
26
19
|
);
|
|
27
20
|
});
|
|
28
|
-
|
|
29
21
|
export const ToastConfig = {
|
|
30
22
|
PEER_LIST: {
|
|
31
23
|
single: function (notification) {
|
|
@@ -98,14 +90,14 @@ export const ToastConfig = {
|
|
|
98
90
|
return {
|
|
99
91
|
title: `New message from ${notification.data?.senderName}`,
|
|
100
92
|
icon: <ChatIcon />,
|
|
101
|
-
action:
|
|
93
|
+
action: <ChatAction />,
|
|
102
94
|
};
|
|
103
95
|
},
|
|
104
96
|
multiple: notifications => {
|
|
105
97
|
return {
|
|
106
98
|
title: `${notifications.length} new messages`,
|
|
107
99
|
icon: <ChatIcon />,
|
|
108
|
-
action:
|
|
100
|
+
action: <ChatAction />,
|
|
109
101
|
};
|
|
110
102
|
},
|
|
111
103
|
},
|
|
@@ -9,6 +9,7 @@ import {
|
|
|
9
9
|
useHMSActions,
|
|
10
10
|
useHMSStore,
|
|
11
11
|
} from '@100mslive/react-sdk';
|
|
12
|
+
import { HLSFailureModal } from './Notifications/HLSFailureModal';
|
|
12
13
|
import { Box, Flex } from '../../Layout';
|
|
13
14
|
import { useHMSPrebuiltContext } from '../AppContext';
|
|
14
15
|
import { ConferenceMainView } from '../layouts/mainView';
|
|
@@ -16,7 +17,7 @@ import { Footer } from './Footer';
|
|
|
16
17
|
import FullPageProgress from './FullPageProgress';
|
|
17
18
|
import { Header } from './Header';
|
|
18
19
|
import { RoleChangeRequestModal } from './RoleChangeRequestModal';
|
|
19
|
-
import { useAuthToken, useIsHeadless } from './AppData/useUISettings';
|
|
20
|
+
import { useAuthToken, useIsHeadless, useSetAppDataByKey } from './AppData/useUISettings';
|
|
20
21
|
import { useNavigation } from './hooks/useNavigation';
|
|
21
22
|
import { useSkipPreview } from './hooks/useSkipPreview';
|
|
22
23
|
import { APP_DATA, EMOJI_REACTION_TYPE, isAndroid, isIOS, isIPadOS } from '../common/constants';
|
|
@@ -38,6 +39,7 @@ const Conference = () => {
|
|
|
38
39
|
const footerRef = useRef();
|
|
39
40
|
const dropdownListRef = useRef();
|
|
40
41
|
const performAutoHide = hideControls && (isAndroid || isIOS || isIPadOS);
|
|
42
|
+
const [isHLSStarted] = useSetAppDataByKey(APP_DATA.hlsStarted);
|
|
41
43
|
|
|
42
44
|
const toggleControls = () => {
|
|
43
45
|
if (dropdownListRef.current?.length === 0) {
|
|
@@ -105,7 +107,11 @@ const Conference = () => {
|
|
|
105
107
|
}, [isHeadless, hmsActions]);
|
|
106
108
|
|
|
107
109
|
if (!isConnectedToRoom) {
|
|
108
|
-
return <FullPageProgress />;
|
|
110
|
+
return <FullPageProgress loadingText="Joining..." />;
|
|
111
|
+
}
|
|
112
|
+
|
|
113
|
+
if (isHLSStarted) {
|
|
114
|
+
return <FullPageProgress loadingText="Starting live stream..." />;
|
|
109
115
|
}
|
|
110
116
|
|
|
111
117
|
return (
|
|
@@ -157,6 +163,7 @@ const Conference = () => {
|
|
|
157
163
|
</Box>
|
|
158
164
|
)}
|
|
159
165
|
<RoleChangeRequestModal />
|
|
166
|
+
<HLSFailureModal />
|
|
160
167
|
</Flex>
|
|
161
168
|
);
|
|
162
169
|
};
|
|
@@ -9,7 +9,7 @@ export const PdfErrorView = ({ isPDFUrlValid }) => {
|
|
|
9
9
|
<DialogRow
|
|
10
10
|
css={{
|
|
11
11
|
mt: '-$8',
|
|
12
|
-
color: '$
|
|
12
|
+
color: '$alert_error_default',
|
|
13
13
|
justifyContent: 'start',
|
|
14
14
|
}}
|
|
15
15
|
>
|
|
@@ -18,7 +18,7 @@ export const PdfErrorView = ({ isPDFUrlValid }) => {
|
|
|
18
18
|
variant="caption"
|
|
19
19
|
css={{
|
|
20
20
|
pl: '$1',
|
|
21
|
-
color: '$
|
|
21
|
+
color: '$alert_error_default',
|
|
22
22
|
}}
|
|
23
23
|
>
|
|
24
24
|
Please enter a valid PDF URL
|
|
@@ -9,10 +9,10 @@ export const PDFInfo = () => {
|
|
|
9
9
|
css={{
|
|
10
10
|
px: '$8',
|
|
11
11
|
py: '$3',
|
|
12
|
-
bg: '$
|
|
12
|
+
bg: '$surface_bright',
|
|
13
13
|
r: '$1',
|
|
14
14
|
outline: 'none',
|
|
15
|
-
border: '1px solid $
|
|
15
|
+
border: '1px solid $border_bright',
|
|
16
16
|
minHeight: '$11',
|
|
17
17
|
}}
|
|
18
18
|
>
|
|
@@ -89,9 +89,9 @@ export function ShareScreenOptions() {
|
|
|
89
89
|
p: '$6',
|
|
90
90
|
display: 'flex',
|
|
91
91
|
justifyContent: 'center',
|
|
92
|
-
border: '1px solid $
|
|
92
|
+
border: '1px solid $border_bright',
|
|
93
93
|
r: '$2',
|
|
94
|
-
bg: '$
|
|
94
|
+
bg: '$surface_brighter',
|
|
95
95
|
pb: '0',
|
|
96
96
|
}}
|
|
97
97
|
>
|
|
@@ -109,7 +109,7 @@ export function ShareScreenOptions() {
|
|
|
109
109
|
<Text
|
|
110
110
|
variant="caption"
|
|
111
111
|
css={{
|
|
112
|
-
c: '$
|
|
112
|
+
c: '$on_surface_low',
|
|
113
113
|
textAlign: 'center',
|
|
114
114
|
}}
|
|
115
115
|
>
|
|
@@ -133,9 +133,9 @@ export function ShareScreenOptions() {
|
|
|
133
133
|
p: '$6',
|
|
134
134
|
display: 'flex',
|
|
135
135
|
justifyContent: 'center',
|
|
136
|
-
border: '$
|
|
136
|
+
border: '$border_bright 1px solid',
|
|
137
137
|
r: '$2',
|
|
138
|
-
bg: '$
|
|
138
|
+
bg: '$surface_bright',
|
|
139
139
|
pb: '0',
|
|
140
140
|
}}
|
|
141
141
|
>
|
|
@@ -149,33 +149,25 @@ export function ShareScreenOptions() {
|
|
|
149
149
|
/>
|
|
150
150
|
<Flex
|
|
151
151
|
direction="row"
|
|
152
|
+
align="center"
|
|
152
153
|
css={{
|
|
153
154
|
position: 'absolute',
|
|
154
155
|
top: '29%',
|
|
155
156
|
left: '54%',
|
|
156
157
|
padding: '$2 $4',
|
|
157
158
|
r: '$2',
|
|
158
|
-
bg: '$
|
|
159
|
+
bg: '$primary_bright',
|
|
159
160
|
zIndex: '2',
|
|
161
|
+
gap: '$2',
|
|
160
162
|
}}
|
|
161
163
|
>
|
|
162
|
-
<
|
|
163
|
-
|
|
164
|
-
w: '$10',
|
|
165
|
-
h: '$8',
|
|
166
|
-
'&:hover': {
|
|
167
|
-
bg: '$transparent !important',
|
|
168
|
-
border: 'none',
|
|
169
|
-
},
|
|
170
|
-
}}
|
|
171
|
-
>
|
|
172
|
-
<StarIcon />
|
|
173
|
-
</IconButton>
|
|
164
|
+
<StarIcon height={14} width={14} />
|
|
165
|
+
|
|
174
166
|
<Text
|
|
175
167
|
variant="xs"
|
|
176
168
|
css={{
|
|
177
169
|
fontWeight: '$semiBold',
|
|
178
|
-
c: '$
|
|
170
|
+
c: '$on_primary_high',
|
|
179
171
|
pr: '$4',
|
|
180
172
|
}}
|
|
181
173
|
>
|
|
@@ -188,7 +180,7 @@ export function ShareScreenOptions() {
|
|
|
188
180
|
<Text
|
|
189
181
|
variant="caption"
|
|
190
182
|
css={{
|
|
191
|
-
c: '$
|
|
183
|
+
c: '$on_surface_low',
|
|
192
184
|
textAlign: 'center',
|
|
193
185
|
}}
|
|
194
186
|
>
|
|
@@ -32,17 +32,17 @@ export const UploadedFile = ({
|
|
|
32
32
|
<DialogRow
|
|
33
33
|
css={{
|
|
34
34
|
fontFamily: '$sans',
|
|
35
|
-
bg: '$
|
|
35
|
+
bg: '$surface_bright',
|
|
36
36
|
r: '$1',
|
|
37
37
|
outline: 'none',
|
|
38
|
-
border: '1px solid $
|
|
38
|
+
border: '1px solid $border_bright',
|
|
39
39
|
p: '$4 $6',
|
|
40
40
|
minHeight: '$11',
|
|
41
|
-
c: '$
|
|
41
|
+
c: '$on_primary_high',
|
|
42
42
|
fs: '$md',
|
|
43
43
|
w: '100%',
|
|
44
44
|
'&:focus': {
|
|
45
|
-
boxShadow: '0 0 0 1px $colors$
|
|
45
|
+
boxShadow: '0 0 0 1px $colors$primary_default',
|
|
46
46
|
border: '1px solid $transparent',
|
|
47
47
|
},
|
|
48
48
|
mb: 0,
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
<svg width="32" height="42" viewBox="0 0 32 42" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
2
|
+
<rect x="14.528" y="5.91187" width="2.944" height="30.176" fill="#538DFF"/>
|
|
3
|
+
<rect x="22.2692" y="7.19727" width="2.944" height="30.176" transform="rotate(30 22.2692 7.19727)" fill="#538DFF"/>
|
|
4
|
+
<rect x="31.088" y="19.5278" width="2.944" height="30.176" transform="rotate(90 31.088 19.5278)" fill="#538DFF"/>
|
|
5
|
+
<rect x="29.8026" y="27.269" width="2.944" height="30.176" transform="rotate(120 29.8026 27.269)" fill="#538DFF"/>
|
|
6
|
+
<rect x="24.8188" y="33.3304" width="2.944" height="30.176" transform="rotate(150 24.8188 33.3304)" fill="#538DFF"/>
|
|
7
|
+
<rect x="28.3306" y="12.181" width="2.944" height="30.176" transform="rotate(60 28.3306 12.181)" fill="#538DFF"/>
|
|
8
|
+
</svg>
|
|
Binary file
|
|
Binary file
|
package/src/Prebuilt/index.d.ts
CHANGED
|
@@ -1,15 +1,20 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
+
import type { Screens, Theme, Typography } from '@100mslive/types-prebuilt';
|
|
2
3
|
|
|
3
4
|
export declare const HMSPrebuilt: React.FC<{
|
|
4
5
|
roomCode: string;
|
|
5
6
|
logo?: {
|
|
6
7
|
url: string;
|
|
7
8
|
};
|
|
9
|
+
themes?: Theme[];
|
|
10
|
+
typography?: Typography;
|
|
11
|
+
screens?: Screens;
|
|
8
12
|
options?: {
|
|
9
|
-
|
|
13
|
+
endpoints?: {
|
|
10
14
|
tokenByRoomIdRole?: string;
|
|
11
15
|
tokenByRoomCode?: string;
|
|
12
16
|
init?: string;
|
|
17
|
+
roomLayout?: string;
|
|
13
18
|
};
|
|
14
19
|
};
|
|
15
20
|
}>;
|
|
@@ -12,7 +12,7 @@ export const NonPublisherView = React.memo(({ message }) => {
|
|
|
12
12
|
maxWidth: '96%',
|
|
13
13
|
h: '100%',
|
|
14
14
|
m: 'auto',
|
|
15
|
-
background: '$
|
|
15
|
+
background: '$surface_default',
|
|
16
16
|
borderRadius: '$3',
|
|
17
17
|
}}
|
|
18
18
|
data-testid="non_publisher_view"
|
|
@@ -41,7 +41,7 @@ export const NonPublisherView = React.memo(({ message }) => {
|
|
|
41
41
|
<Text color="white" variant="h6" css={{ '@md': { fontSize: '$md' } }}>
|
|
42
42
|
{message}
|
|
43
43
|
</Text>
|
|
44
|
-
<Text color="$
|
|
44
|
+
<Text color="$on_surface_medium" css={{ mt: '$4', '@md': { fontSize: '$sm' } }}>
|
|
45
45
|
Please go to dashboard and reconfigure role settings or contact the role admin.
|
|
46
46
|
</Text>
|
|
47
47
|
</Flex>
|
|
@@ -12,7 +12,7 @@ export const WaitingView = React.memo(() => {
|
|
|
12
12
|
maxWidth: '96%',
|
|
13
13
|
h: '100%',
|
|
14
14
|
m: 'auto',
|
|
15
|
-
background: '$
|
|
15
|
+
background: '$surface_default',
|
|
16
16
|
borderRadius: '$3',
|
|
17
17
|
}}
|
|
18
18
|
data-testid="waiting_view"
|
|
@@ -41,7 +41,7 @@ export const WaitingView = React.memo(() => {
|
|
|
41
41
|
<Text color="white" variant="h6" css={{ '@md': { fontSize: '$md' } }}>
|
|
42
42
|
Please wait
|
|
43
43
|
</Text>
|
|
44
|
-
<Text color="$
|
|
44
|
+
<Text color="$on_surface_medium" css={{ mt: '$4', '@md': { fontSize: '$sm' } }}>
|
|
45
45
|
Sit back and relax till others let you join.
|
|
46
46
|
</Text>
|
|
47
47
|
</Flex>
|