@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.
Files changed (241) hide show
  1. package/README.md +18 -0
  2. package/dist/Accordion/Accordion.d.ts +62 -138
  3. package/dist/Accordion/index.d.ts +62 -138
  4. package/dist/{ActiveSpeakerView-H3VYXANB.js → ActiveSpeakerView-4XPIRZOK.js} +6 -6
  5. package/dist/{HLSView-6BVBCQM7.css → ActiveSpeakerView-ADEYHQMU.css} +2 -2
  6. package/dist/{PinnedTrackView-QQ5FDXJX.css.map → ActiveSpeakerView-ADEYHQMU.css.map} +2 -2
  7. package/dist/Avatar/Avatar.d.ts +31 -69
  8. package/dist/Button/Button.d.ts +31 -69
  9. package/dist/Checkbox/Checkbox.d.ts +62 -138
  10. package/dist/Collapsible/Collapsible.d.ts +93 -207
  11. package/dist/Divider/Divider.d.ts +62 -138
  12. package/dist/Dropdown/Dropdown.d.ts +372 -828
  13. package/dist/Fieldset/Fieldset.d.ts +31 -69
  14. package/dist/Footer/Footer.d.ts +248 -552
  15. package/dist/{conference-KN6OKGDU.css → HLSView-DWEEMZ6Z.css} +2 -2
  16. package/dist/{HLSView-6BVBCQM7.css.map → HLSView-DWEEMZ6Z.css.map} +2 -2
  17. package/dist/{HLSView-3RDXRV7Y.js → HLSView-I26CVF5U.js} +16 -16
  18. package/dist/HLSView-I26CVF5U.js.map +7 -0
  19. package/dist/IconButton/IconButton.d.ts +31 -69
  20. package/dist/Input/Input.d.ts +189 -417
  21. package/dist/Label/Label.d.ts +31 -69
  22. package/dist/Layout/Box.d.ts +31 -69
  23. package/dist/Layout/Flex.d.ts +31 -69
  24. package/dist/Link/Link.d.ts +31 -69
  25. package/dist/Modal/Dialog.d.ts +248 -552
  26. package/dist/Modal/DialogContent.d.ts +217 -483
  27. package/dist/Pagination/StyledPagination.d.ts +124 -276
  28. package/dist/{PinnedTrackView-QQ5FDXJX.css → PinnedTrackView-5DPVVOZW.css} +2 -2
  29. package/dist/{conference-KN6OKGDU.css.map → PinnedTrackView-5DPVVOZW.css.map} +2 -2
  30. package/dist/{PinnedTrackView-453PELNU.js → PinnedTrackView-GGTCNH5V.js} +6 -6
  31. package/dist/Popover/index.d.ts +93 -207
  32. package/dist/Prebuilt/provider/roomLayoutProvider/constants/index.d.ts +2 -0
  33. package/dist/Prebuilt/provider/roomLayoutProvider/hooks/useFetchRoomLayout.d.ts +9 -0
  34. package/dist/Prebuilt/provider/roomLayoutProvider/index.d.ts +9 -0
  35. package/dist/Progress/index.d.ts +62 -138
  36. package/dist/RadioGroup/RadioGroup.d.ts +93 -207
  37. package/dist/ReactSelect/ReactSelect.d.ts +310 -690
  38. package/dist/Select/Select.d.ts +93 -207
  39. package/dist/Slider/Slider.d.ts +31 -69
  40. package/dist/Stats/StyledStats.d.ts +186 -414
  41. package/dist/Switch/Switch.d.ts +31 -69
  42. package/dist/Tabs/Tabs.d.ts +124 -276
  43. package/dist/Text/Text.d.ts +31 -69
  44. package/dist/Theme/ThemeProvider.d.ts +63 -140
  45. package/dist/Theme/base.config.d.ts +31 -53
  46. package/dist/Theme/index.d.ts +0 -1
  47. package/dist/Theme/stitches.config.d.ts +404 -915
  48. package/dist/TileMenu/StyledMenuTile.d.ts +217 -483
  49. package/dist/Toast/Toast.d.ts +187 -415
  50. package/dist/Video/Video.d.ts +31 -69
  51. package/dist/VideoList/StyledVideoList.d.ts +93 -207
  52. package/dist/VideoTile/StyledVideoTile.d.ts +279 -621
  53. package/dist/{VirtualBackground-LHYBWUT5.js → VirtualBackground-ZRRE4DUA.js} +4 -3
  54. package/dist/{VirtualBackground-LHYBWUT5.js.map → VirtualBackground-ZRRE4DUA.js.map} +2 -2
  55. package/dist/{chunk-KYYP6ZVK.js → chunk-4ISMCWQA.js} +49 -146
  56. package/dist/chunk-4ISMCWQA.js.map +7 -0
  57. package/dist/{chunk-7YUYZ64D.js → chunk-KKLZ7K2L.js} +577 -898
  58. package/dist/chunk-KKLZ7K2L.js.map +7 -0
  59. package/dist/{chunk-HCAGFNXW.js → chunk-LUND6FLY.js} +1490 -1134
  60. package/dist/chunk-LUND6FLY.js.map +7 -0
  61. package/dist/chunk-MYK3T45M.js +58 -0
  62. package/dist/chunk-MYK3T45M.js.map +7 -0
  63. package/dist/{chunk-XRJXE6UO.js → chunk-THORW2WT.js} +4 -4
  64. package/dist/{chunk-XRJXE6UO.js.map → chunk-THORW2WT.js.map} +1 -1
  65. package/dist/{conference-IDNRO4WK.js → conference-5TDUAQ6K.js} +593 -532
  66. package/dist/conference-5TDUAQ6K.js.map +7 -0
  67. package/dist/{ActiveSpeakerView-REZLWPPI.css → conference-BDCDGBIS.css} +2 -2
  68. package/dist/{ActiveSpeakerView-REZLWPPI.css.map → conference-BDCDGBIS.css.map} +2 -2
  69. package/dist/index.cjs.css +1 -1
  70. package/dist/index.cjs.css.map +2 -2
  71. package/dist/index.cjs.js +3450 -3418
  72. package/dist/index.cjs.js.map +4 -4
  73. package/dist/index.css +1 -1
  74. package/dist/index.css.map +2 -2
  75. package/dist/index.js +4 -8
  76. package/dist/meta.cjs.json +761 -490
  77. package/dist/meta.esbuild.json +857 -589
  78. package/dist/{transcription-BTSB7FZH.js → transcription-PYTSSAOB.js} +3 -3
  79. package/package.json +14 -9
  80. package/src/Accordion/Accordion.tsx +3 -3
  81. package/src/AudioLevel/AudioLevel.tsx +1 -1
  82. package/src/Avatar/Avatar.tsx +8 -3
  83. package/src/Button/Button.tsx +76 -20
  84. package/src/Checkbox/Checkbox.tsx +4 -4
  85. package/src/Collapsible/Collapsible.tsx +1 -1
  86. package/src/Divider/Divider.tsx +2 -2
  87. package/src/Divider/HorizontalDivider.stories.tsx +2 -2
  88. package/src/Divider/VerticalDivider.stories.tsx +1 -1
  89. package/src/Dropdown/Dropdown.stories.tsx +3 -3
  90. package/src/Dropdown/Dropdown.tsx +16 -14
  91. package/src/IconButton/IconButton.tsx +8 -7
  92. package/src/Input/Input.tsx +9 -8
  93. package/src/Input/PasswordInput.stories.tsx +2 -2
  94. package/src/Label/Label.tsx +1 -1
  95. package/src/Link/Link.tsx +4 -4
  96. package/src/Loading/Loading.tsx +7 -10
  97. package/src/Modal/Dialog.stories.tsx +2 -2
  98. package/src/Modal/DialogContent.tsx +3 -3
  99. package/src/Pagination/StyledPagination.tsx +4 -4
  100. package/src/Popover/Popover.stories.tsx +5 -5
  101. package/src/Popover/index.tsx +1 -1
  102. package/src/Prebuilt/App.jsx +101 -68
  103. package/src/Prebuilt/IconButton.jsx +2 -2
  104. package/src/Prebuilt/Prebuilt.stories.tsx +8 -2
  105. package/src/Prebuilt/common/constants.js +0 -1
  106. package/src/Prebuilt/common/utils.js +0 -6
  107. package/src/Prebuilt/components/AppData/AppData.jsx +7 -4
  108. package/src/Prebuilt/components/AppData/useUISettings.js +0 -4
  109. package/src/Prebuilt/components/AudioVideoToggle.jsx +73 -20
  110. package/src/Prebuilt/components/BottomActionSheet/BottomActionSheet.jsx +1 -1
  111. package/src/Prebuilt/components/Chat/Chat.jsx +6 -2
  112. package/src/Prebuilt/components/Chat/ChatBody.jsx +13 -11
  113. package/src/Prebuilt/components/Chat/ChatFooter.jsx +2 -2
  114. package/src/Prebuilt/components/Chat/ChatHeader.jsx +3 -3
  115. package/src/Prebuilt/components/Chat/ChatSelector.jsx +2 -2
  116. package/src/Prebuilt/components/Chat/useEmojiPickerStyles.js +6 -6
  117. package/src/Prebuilt/components/Chip.jsx +24 -0
  118. package/src/Prebuilt/components/Connection/ConnectionIndicator.jsx +6 -6
  119. package/src/Prebuilt/components/Connection/TileConnection.jsx +2 -2
  120. package/src/Prebuilt/components/Connection/connectionQualityUtils.js +4 -4
  121. package/src/Prebuilt/components/EmojiReaction.jsx +13 -10
  122. package/src/Prebuilt/components/ErrorBoundary.jsx +2 -2
  123. package/src/Prebuilt/components/FullPageProgress.jsx +5 -3
  124. package/src/Prebuilt/components/GoLiveButton.jsx +1 -4
  125. package/src/Prebuilt/components/HMSVideo/HLSQualitySelector.jsx +2 -2
  126. package/src/Prebuilt/components/HMSVideo/PlayButton.jsx +1 -1
  127. package/src/Prebuilt/components/HMSVideo/VideoProgress.jsx +3 -3
  128. package/src/Prebuilt/components/HMSVideo/VideoTime.jsx +3 -1
  129. package/src/Prebuilt/components/HMSVideo/VolumeControl.jsx +1 -1
  130. package/src/Prebuilt/components/Header/AdditionalRoomState.jsx +17 -17
  131. package/src/Prebuilt/components/Header/AmbientMusic.jsx +1 -1
  132. package/src/Prebuilt/components/Header/ConferencingHeader.jsx +4 -6
  133. package/src/Prebuilt/components/Header/HeaderComponents.jsx +10 -5
  134. package/src/Prebuilt/components/Header/ParticipantFilter.jsx +2 -2
  135. package/src/Prebuilt/components/Header/ParticipantList.jsx +2 -2
  136. package/src/Prebuilt/components/Header/StreamActions.jsx +9 -19
  137. package/src/Prebuilt/components/Header/StreamingHeader.jsx +5 -6
  138. package/src/Prebuilt/components/HlsStatsOverlay.jsx +2 -2
  139. package/src/Prebuilt/components/IconButtonWithOptions/IconButtonWithOptions.jsx +102 -0
  140. package/src/Prebuilt/components/IconButtonWithOptions/IconButtonWithOptions.stories.tsx +40 -0
  141. package/src/Prebuilt/components/LeaveRoom.jsx +11 -11
  142. package/src/Prebuilt/components/MetaActions.jsx +2 -2
  143. package/src/Prebuilt/components/MoreSettings/BulkRoleChangeModal.jsx +2 -2
  144. package/src/Prebuilt/components/MoreSettings/ChangeSelfRole.jsx +1 -1
  145. package/src/Prebuilt/components/MoreSettings/MoreSettings.jsx +1 -0
  146. package/src/Prebuilt/components/Notifications/HLSFailureModal.jsx +69 -0
  147. package/src/Prebuilt/components/Notifications/Notifications.jsx +1 -3
  148. package/src/Prebuilt/components/Notifications/PermissionErrorModal.jsx +108 -26
  149. package/src/Prebuilt/components/Notifications/ReconnectNotifications.jsx +1 -1
  150. package/src/Prebuilt/components/PIP/pipUtils.js +2 -2
  151. package/src/Prebuilt/components/Playlist/Playlist.jsx +4 -4
  152. package/src/Prebuilt/components/Playlist/PlaylistControls.jsx +3 -3
  153. package/src/Prebuilt/components/Playlist/PlaylistItem.jsx +3 -3
  154. package/src/Prebuilt/components/Playlist/VideoPlayer.jsx +4 -4
  155. package/src/Prebuilt/components/PostLeave.jsx +4 -4
  156. package/src/Prebuilt/components/Preview/PreviewContainer.jsx +17 -6
  157. package/src/Prebuilt/components/Preview/PreviewForm.jsx +74 -0
  158. package/src/Prebuilt/components/Preview/PreviewJoin.jsx +100 -37
  159. package/src/Prebuilt/components/RoleChangeModal.jsx +3 -3
  160. package/src/Prebuilt/components/ScreenshareDisplay.jsx +2 -2
  161. package/src/Prebuilt/components/Settings/DeviceSettings.jsx +3 -9
  162. package/src/Prebuilt/components/Settings/SettingsModal.jsx +8 -32
  163. package/src/Prebuilt/components/Settings/StartRecording.jsx +4 -12
  164. package/src/Prebuilt/components/Settings/SwitchWithLabel.jsx +2 -3
  165. package/src/Prebuilt/components/Settings/common.js +26 -0
  166. package/src/Prebuilt/components/StatsForNerds.jsx +5 -5
  167. package/src/Prebuilt/components/Streaming/Common.jsx +11 -11
  168. package/src/Prebuilt/components/Streaming/HLSStreaming.jsx +6 -12
  169. package/src/Prebuilt/components/Streaming/RTMPStreaming.jsx +4 -6
  170. package/src/Prebuilt/components/Streaming/StreamingLanding.jsx +4 -4
  171. package/src/Prebuilt/components/TileMenu.jsx +7 -7
  172. package/src/Prebuilt/components/Toast/ToastConfig.jsx +12 -20
  173. package/src/Prebuilt/components/conference.jsx +9 -2
  174. package/src/Prebuilt/components/hooks/useDropdownSelection.jsx +1 -4
  175. package/src/Prebuilt/components/pdfAnnotator/pdfErrorView.jsx +2 -2
  176. package/src/Prebuilt/components/pdfAnnotator/pdfFileOptions.jsx +1 -1
  177. package/src/Prebuilt/components/pdfAnnotator/pdfHeader.jsx +1 -1
  178. package/src/Prebuilt/components/pdfAnnotator/pdfInfo.jsx +2 -2
  179. package/src/Prebuilt/components/pdfAnnotator/shareScreenOptions.jsx +12 -20
  180. package/src/Prebuilt/components/pdfAnnotator/uploadedFile.jsx +4 -4
  181. package/src/Prebuilt/images/Logo.svg +8 -0
  182. package/src/Prebuilt/images/first_person.png +0 -0
  183. package/src/Prebuilt/images/rtmp.png +0 -0
  184. package/src/Prebuilt/index.d.ts +6 -1
  185. package/src/Prebuilt/layouts/HLSView.jsx +1 -1
  186. package/src/Prebuilt/layouts/InsetView.jsx +0 -3
  187. package/src/Prebuilt/layouts/NonPublisherView.jsx +2 -2
  188. package/src/Prebuilt/layouts/SidePane.jsx +1 -1
  189. package/src/Prebuilt/layouts/WaitingView.jsx +2 -2
  190. package/src/Prebuilt/layouts/mainView.jsx +42 -5
  191. package/src/Prebuilt/plugins/FlyingEmoji.jsx +2 -2
  192. package/src/Prebuilt/plugins/VirtualBackground/VirtualBackground.jsx +1 -0
  193. package/src/Prebuilt/plugins/whiteboard/ToggleWhiteboard.jsx +1 -3
  194. package/src/Prebuilt/primitives/DialogContent.jsx +4 -4
  195. package/src/Prebuilt/primitives/DropdownTrigger.jsx +3 -3
  196. package/src/Prebuilt/provider/roomLayoutProvider/constants/index.ts +33 -0
  197. package/src/Prebuilt/provider/roomLayoutProvider/hooks/useFetchRoomLayout.ts +57 -0
  198. package/src/Prebuilt/provider/roomLayoutProvider/index.tsx +26 -0
  199. package/src/Progress/index.tsx +2 -2
  200. package/src/RadioGroup/RadioGroup.tsx +3 -3
  201. package/src/ReactSelect/ReactSelect.stories.tsx +7 -7
  202. package/src/ReactSelect/ReactSelect.tsx +8 -8
  203. package/src/Select/Select.tsx +6 -6
  204. package/src/Slider/Slider.tsx +5 -5
  205. package/src/Stats/Stats.tsx +12 -2
  206. package/src/Stats/StyledStats.tsx +3 -3
  207. package/src/Switch/Switch.tsx +5 -5
  208. package/src/Tabs/Tabs.stories.tsx +2 -2
  209. package/src/Tabs/Tabs.tsx +2 -2
  210. package/src/Text/Text.tsx +2 -2
  211. package/src/Theme/ThemeProvider.tsx +4 -7
  212. package/src/Theme/ThemeStory.jsx +17 -19
  213. package/src/Theme/base.config.ts +31 -59
  214. package/src/Theme/index.tsx +0 -1
  215. package/src/Theme/stitches.config.ts +2 -7
  216. package/src/TileMenu/StyledMenuTile.tsx +11 -8
  217. package/src/Toast/Toast.tsx +10 -9
  218. package/src/Tooltip/Tooltip.stories.tsx +1 -1
  219. package/src/Tooltip/Tooltip.tsx +4 -4
  220. package/src/Video/Video.tsx +1 -1
  221. package/src/VideoTile/StyledVideoTile.tsx +12 -12
  222. package/src/assets/android-perm-0.png +0 -0
  223. package/src/assets/android-perm-1.png +0 -0
  224. package/src/assets/ios-perm-0.png +0 -0
  225. package/src/fixtures/chats.ts +1 -1
  226. package/dist/HLSView-3RDXRV7Y.js.map +0 -7
  227. package/dist/Theme/themes.d.ts +0 -64
  228. package/dist/chunk-7YUYZ64D.js.map +0 -7
  229. package/dist/chunk-HCAGFNXW.js.map +0 -7
  230. package/dist/chunk-KYYP6ZVK.js.map +0 -7
  231. package/dist/chunk-ULXGBUSC.js +0 -65
  232. package/dist/chunk-ULXGBUSC.js.map +0 -7
  233. package/dist/conference-IDNRO4WK.js.map +0 -7
  234. package/src/Prebuilt/components/Preview/PreviewName.jsx +0 -37
  235. package/src/Prebuilt/components/Streaming/RTMPIcon.jsx +0 -24
  236. package/src/Prebuilt/hms.js +0 -7
  237. package/src/Prebuilt/plugins/confetti.jsx +0 -60
  238. package/src/Theme/themes.ts +0 -70
  239. /package/dist/{ActiveSpeakerView-H3VYXANB.js.map → ActiveSpeakerView-4XPIRZOK.js.map} +0 -0
  240. /package/dist/{PinnedTrackView-453PELNU.js.map → PinnedTrackView-GGTCNH5V.js.map} +0 -0
  241. /package/dist/{transcription-BTSB7FZH.js.map → transcription-PYTSSAOB.js.map} +0 -0
@@ -1,5 +1,5 @@
1
1
  import React, { Fragment, useCallback, useEffect, useState } from 'react';
2
- import { selectAppData, selectRoomID, useHMSActions, useHMSStore, useRecordingStreaming } from '@100mslive/react-sdk';
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: '$surfaceLight',
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: '$primaryLight' }}>
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: '$textMedEmp', mt: '$6' }}>
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, recordingUrl],
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="$textMedEmp" css={{ mx: '$8' }}>
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 { selectAppData, useHMSActions, useHMSStore, useRecordingStreaming } from '@100mslive/react-sdk';
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 $surfaceLight !important',
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: '$textHighEmp', my: '$4', fontSize: '$sm' }}>
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: '$error', mx: '$2' }}>
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: '$surfaceLight',
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="$textMedEmp">
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
- Icon={RTMPIcon}
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>{`${isTilePinned ? 'Unpin' : 'Pin'}`} Tile for myself</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>{`${isVideoEnabled ? 'Mute' : 'Request Unmute'}`}</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>{`${isAudioEnabled ? 'Mute' : 'Request Unmute'}`}</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: '$textMedEmp', cursor: 'default' }}>
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: '$textMedEmp' }}>
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: '$textMedEmp' }}>
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: '$textMedEmp',
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 { hmsActions, hmsStore } from '../../hms';
6
- import { APP_DATA, SIDE_PANE_OPTIONS } from '../../common/constants';
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: isChatOpen() ? null : <ChatAction />,
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: isChatOpen() ? null : <ChatAction />,
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
  };
@@ -1,6 +1,3 @@
1
- import { useTheme } from '../../../';
2
-
3
1
  export const useDropdownSelection = () => {
4
- const { themeType } = useTheme();
5
- return themeType === 'dark' ? '$primaryDark' : '$grayLight';
2
+ return '$primary_dim';
6
3
  };
@@ -9,7 +9,7 @@ export const PdfErrorView = ({ isPDFUrlValid }) => {
9
9
  <DialogRow
10
10
  css={{
11
11
  mt: '-$8',
12
- color: '$error',
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: '$error',
21
+ color: '$alert_error_default',
22
22
  }}
23
23
  >
24
24
  Please enter a valid PDF URL
@@ -47,7 +47,7 @@ export function PDFFileOptions({ onOpenChange }) {
47
47
  <Text
48
48
  variant="tiny"
49
49
  css={{
50
- color: '$textDisabled',
50
+ color: '$on_surface_low',
51
51
  }}
52
52
  >
53
53
  OR
@@ -20,7 +20,7 @@ export const PDFHeader = () => {
20
20
  <Text
21
21
  variant="sm"
22
22
  css={{
23
- c: '$textMedEmp',
23
+ c: '$on_surface_medium',
24
24
  }}
25
25
  >
26
26
  Choose PDF you want to annotate and share
@@ -9,10 +9,10 @@ export const PDFInfo = () => {
9
9
  css={{
10
10
  px: '$8',
11
11
  py: '$3',
12
- bg: '$surfaceLight',
12
+ bg: '$surface_bright',
13
13
  r: '$1',
14
14
  outline: 'none',
15
- border: '1px solid $borderLight',
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 $grayDefault',
92
+ border: '1px solid $border_bright',
93
93
  r: '$2',
94
- bg: '$surfaceLighter',
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: '$textDisabled',
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: '$grayDefault 1px solid',
136
+ border: '$border_bright 1px solid',
137
137
  r: '$2',
138
- bg: '$surfaceLight',
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: '$primaryLight',
159
+ bg: '$primary_bright',
159
160
  zIndex: '2',
161
+ gap: '$2',
160
162
  }}
161
163
  >
162
- <IconButton
163
- css={{
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: '$white',
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: '$textDisabled',
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: '$surfaceLight',
35
+ bg: '$surface_bright',
36
36
  r: '$1',
37
37
  outline: 'none',
38
- border: '1px solid $borderLight',
38
+ border: '1px solid $border_bright',
39
39
  p: '$4 $6',
40
40
  minHeight: '$11',
41
- c: '$textPrimary',
41
+ c: '$on_primary_high',
42
42
  fs: '$md',
43
43
  w: '100%',
44
44
  '&:focus': {
45
- boxShadow: '0 0 0 1px $colors$borderAccent',
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
@@ -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
- endPoints?: {
13
+ endpoints?: {
10
14
  tokenByRoomIdRole?: string;
11
15
  tokenByRoomCode?: string;
12
16
  init?: string;
17
+ roomLayout?: string;
13
18
  };
14
19
  };
15
20
  }>;
@@ -243,7 +243,7 @@ const HLSView = () => {
243
243
  css={{
244
244
  height: '$4',
245
245
  width: '$4',
246
- background: isVideoLive ? '$error' : '$white',
246
+ background: isVideoLive ? '$alert_error_default' : '$on_primary_high',
247
247
  r: '$1',
248
248
  }}
249
249
  />
@@ -210,9 +210,6 @@ const InsetTile = ({ isMobile, roleMap, isLandscape }) => {
210
210
  size: '100%',
211
211
  padding: 0,
212
212
  }}
213
- containerCSS={{
214
- bg: '$surfaceDefault',
215
- }}
216
213
  width={width}
217
214
  height={height}
218
215
  />
@@ -12,7 +12,7 @@ export const NonPublisherView = React.memo(({ message }) => {
12
12
  maxWidth: '96%',
13
13
  h: '100%',
14
14
  m: 'auto',
15
- background: '$surfaceDefault',
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="$textMedEmp" css={{ mt: '$4', '@md': { fontSize: '$sm' } }}>
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>
@@ -26,7 +26,7 @@ const SidePane = ({ css = {} }) => {
26
26
  w: '$100',
27
27
  h: '100%',
28
28
  p: '$10',
29
- bg: '$surfaceDefault',
29
+ bg: '$surface_default',
30
30
  r: '$1',
31
31
  top: 0,
32
32
  right: '$10',
@@ -12,7 +12,7 @@ export const WaitingView = React.memo(() => {
12
12
  maxWidth: '96%',
13
13
  h: '100%',
14
14
  m: 'auto',
15
- background: '$surfaceDefault',
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="$textMedEmp" css={{ mt: '$4', '@md': { fontSize: '$sm' } }}>
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>