@100mslive/roomkit-react 0.4.3-alpha.3 → 0.4.3-alpha.4

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 (389) hide show
  1. package/dist/index.cjs.css +194 -219
  2. package/dist/index.cjs.css.map +3 -3
  3. package/dist/index.cjs.js +2 -2
  4. package/dist/index.cjs.js.map +2 -2
  5. package/dist/index.css +194 -219
  6. package/dist/index.css.map +3 -3
  7. package/dist/index.js +2 -2
  8. package/dist/index.js.map +2 -2
  9. package/dist/meta.cjs.json +18 -31
  10. package/dist/meta.esbuild.json +18 -31
  11. package/package.json +8 -9
  12. package/src/Accordion/Accordion.tsx +0 -88
  13. package/src/Accordion/index.ts +0 -8
  14. package/src/AudioLevel/AudioLevel.tsx +0 -84
  15. package/src/AudioLevel/audio-level.png +0 -0
  16. package/src/AudioLevel/index.ts +0 -2
  17. package/src/AudioLevel/useBorderAudioLevel.tsx +0 -34
  18. package/src/Avatar/Avatar.tsx +0 -60
  19. package/src/Avatar/getAvatarBg.ts +0 -50
  20. package/src/Avatar/index.ts +0 -1
  21. package/src/Button/Button.tsx +0 -210
  22. package/src/Button/index.tsx +0 -1
  23. package/src/Checkbox/Checkbox.tsx +0 -35
  24. package/src/Checkbox/index.tsx +0 -1
  25. package/src/Collapsible/Collapsible.tsx +0 -34
  26. package/src/Collapsible/index.tsx +0 -1
  27. package/src/Diagnostics/AudioTest.tsx +0 -188
  28. package/src/Diagnostics/BrowserTest.tsx +0 -141
  29. package/src/Diagnostics/ConnectivityTest.tsx +0 -383
  30. package/src/Diagnostics/DeviceSelector.jsx +0 -71
  31. package/src/Diagnostics/Diagnostics.tsx +0 -190
  32. package/src/Diagnostics/DiagnosticsContext.ts +0 -46
  33. package/src/Diagnostics/VideoTest.tsx +0 -72
  34. package/src/Diagnostics/components.tsx +0 -70
  35. package/src/Diagnostics/index.ts +0 -1
  36. package/src/Divider/Divider.tsx +0 -45
  37. package/src/Divider/index.ts +0 -1
  38. package/src/Dropdown/Dropdown.tsx +0 -145
  39. package/src/Dropdown/index.tsx +0 -1
  40. package/src/Fieldset/Fieldset.tsx +0 -11
  41. package/src/Fieldset/index.tsx +0 -1
  42. package/src/Footer/Footer.tsx +0 -47
  43. package/src/Footer/index.tsx +0 -1
  44. package/src/IconButton/IconButton.tsx +0 -43
  45. package/src/IconButton/index.tsx +0 -1
  46. package/src/Input/Input.tsx +0 -109
  47. package/src/Input/index.tsx +0 -1
  48. package/src/Label/Label.tsx +0 -8
  49. package/src/Label/index.ts +0 -1
  50. package/src/Layout/Box.tsx +0 -3
  51. package/src/Layout/Flex.tsx +0 -76
  52. package/src/Layout/index.tsx +0 -2
  53. package/src/Link/Link.tsx +0 -54
  54. package/src/Link/index.tsx +0 -2
  55. package/src/Loading/Loading.tsx +0 -30
  56. package/src/Loading/index.ts +0 -1
  57. package/src/Modal/Dialog.tsx +0 -57
  58. package/src/Modal/DialogContent.tsx +0 -65
  59. package/src/Modal/index.ts +0 -1
  60. package/src/Pagination/StyledPagination.tsx +0 -70
  61. package/src/Pagination/index.tsx +0 -1
  62. package/src/Popover/index.tsx +0 -34
  63. package/src/Prebuilt/App.tsx +0 -318
  64. package/src/Prebuilt/AppContext.tsx +0 -33
  65. package/src/Prebuilt/AppStateContext.tsx +0 -95
  66. package/src/Prebuilt/IconButton.tsx +0 -26
  67. package/src/Prebuilt/common/PeersSorter.ts +0 -111
  68. package/src/Prebuilt/common/constants.ts +0 -151
  69. package/src/Prebuilt/common/hooks.ts +0 -257
  70. package/src/Prebuilt/common/utils.js +0 -185
  71. package/src/Prebuilt/components/AppData/AppData.tsx +0 -208
  72. package/src/Prebuilt/components/AppData/useChatState.js +0 -18
  73. package/src/Prebuilt/components/AppData/useSheet.ts +0 -33
  74. package/src/Prebuilt/components/AppData/useSidepane.js +0 -99
  75. package/src/Prebuilt/components/AppData/useSidepaneResetOnLayoutUpdate.tsx +0 -22
  76. package/src/Prebuilt/components/AppData/useUISettings.js +0 -212
  77. package/src/Prebuilt/components/AudioVideoToggle.tsx +0 -411
  78. package/src/Prebuilt/components/AuthToken.tsx +0 -148
  79. package/src/Prebuilt/components/CaptionIcon.tsx +0 -27
  80. package/src/Prebuilt/components/Chat/ArrowNavigation.tsx +0 -44
  81. package/src/Prebuilt/components/Chat/Chat.tsx +0 -190
  82. package/src/Prebuilt/components/Chat/ChatActions.tsx +0 -314
  83. package/src/Prebuilt/components/Chat/ChatBody.tsx +0 -493
  84. package/src/Prebuilt/components/Chat/ChatFooter.tsx +0 -316
  85. package/src/Prebuilt/components/Chat/ChatSelector.tsx +0 -228
  86. package/src/Prebuilt/components/Chat/ChatSelectorContainer.tsx +0 -158
  87. package/src/Prebuilt/components/Chat/ChatStates.tsx +0 -73
  88. package/src/Prebuilt/components/Chat/EmptyChat.tsx +0 -58
  89. package/src/Prebuilt/components/Chat/MwebChatOption.tsx +0 -24
  90. package/src/Prebuilt/components/Chat/PinnedMessage.tsx +0 -140
  91. package/src/Prebuilt/components/Chat/StickIndicator.tsx +0 -24
  92. package/src/Prebuilt/components/Chat/useEmojiPickerStyles.js +0 -32
  93. package/src/Prebuilt/components/Chat/useUnreadCount.ts +0 -19
  94. package/src/Prebuilt/components/Chat/utils.ts +0 -11
  95. package/src/Prebuilt/components/ChatSettings.tsx +0 -68
  96. package/src/Prebuilt/components/Chip.tsx +0 -40
  97. package/src/Prebuilt/components/ConferenceScreen.tsx +0 -205
  98. package/src/Prebuilt/components/Connection/ConnectionIndicator.tsx +0 -89
  99. package/src/Prebuilt/components/Connection/TileConnection.tsx +0 -93
  100. package/src/Prebuilt/components/Connection/connectionQualityUtils.js +0 -37
  101. package/src/Prebuilt/components/EmojiReaction.jsx +0 -100
  102. package/src/Prebuilt/components/EndCallFeedback/Feedback.tsx +0 -71
  103. package/src/Prebuilt/components/EndCallFeedback/FeedbackForm.tsx +0 -381
  104. package/src/Prebuilt/components/EndCallFeedback/ThankyouView.tsx +0 -64
  105. package/src/Prebuilt/components/ErrorBoundary.jsx +0 -102
  106. package/src/Prebuilt/components/Footer/ChatToggle.tsx +0 -53
  107. package/src/Prebuilt/components/Footer/EmojiCard.jsx +0 -34
  108. package/src/Prebuilt/components/Footer/Footer.tsx +0 -115
  109. package/src/Prebuilt/components/Footer/PaginatedParticipants.tsx +0 -124
  110. package/src/Prebuilt/components/Footer/ParticipantList.tsx +0 -478
  111. package/src/Prebuilt/components/Footer/PollsToggle.tsx +0 -37
  112. package/src/Prebuilt/components/Footer/RoleAccordion.tsx +0 -183
  113. package/src/Prebuilt/components/Footer/RoleOptions.tsx +0 -215
  114. package/src/Prebuilt/components/Footer/WhiteboardToggle.tsx +0 -52
  115. package/src/Prebuilt/components/FullPageProgress.tsx +0 -22
  116. package/src/Prebuilt/components/HMSVideo/Controls.jsx +0 -22
  117. package/src/Prebuilt/components/HMSVideo/FullscreenButton.tsx +0 -13
  118. package/src/Prebuilt/components/HMSVideo/HLSAutoplayBlockedPrompt.tsx +0 -72
  119. package/src/Prebuilt/components/HMSVideo/HLSCaptionSelector.tsx +0 -15
  120. package/src/Prebuilt/components/HMSVideo/HLSQualitySelector.tsx +0 -248
  121. package/src/Prebuilt/components/HMSVideo/HMSVideo.jsx +0 -75
  122. package/src/Prebuilt/components/HMSVideo/MwebHLSViewTitle.tsx +0 -86
  123. package/src/Prebuilt/components/HMSVideo/PlayPauseButton.tsx +0 -27
  124. package/src/Prebuilt/components/HMSVideo/PlayPauseSeekControls.tsx +0 -158
  125. package/src/Prebuilt/components/HMSVideo/PlayerContext.tsx +0 -15
  126. package/src/Prebuilt/components/HMSVideo/SeekControl.tsx +0 -22
  127. package/src/Prebuilt/components/HMSVideo/VideoProgress.tsx +0 -100
  128. package/src/Prebuilt/components/HMSVideo/VideoTime.tsx +0 -52
  129. package/src/Prebuilt/components/HMSVideo/VolumeControl.tsx +0 -70
  130. package/src/Prebuilt/components/HMSVideo/index.ts +0 -24
  131. package/src/Prebuilt/components/HMSVideo/utils.ts +0 -37
  132. package/src/Prebuilt/components/Header/Header.tsx +0 -52
  133. package/src/Prebuilt/components/Header/HeaderComponents.jsx +0 -57
  134. package/src/Prebuilt/components/Header/ParticipantFilter.jsx +0 -89
  135. package/src/Prebuilt/components/Header/RoomDetailsHeader.tsx +0 -51
  136. package/src/Prebuilt/components/Header/StreamActions.tsx +0 -297
  137. package/src/Prebuilt/components/Header/common.jsx +0 -196
  138. package/src/Prebuilt/components/Header/index.tsx +0 -1
  139. package/src/Prebuilt/components/HlsStatsOverlay.jsx +0 -89
  140. package/src/Prebuilt/components/IconButtonWithOptions/IconButtonWithOptions.tsx +0 -167
  141. package/src/Prebuilt/components/Input/KeyboardInputManager.js +0 -107
  142. package/src/Prebuilt/components/InsetTile.tsx +0 -136
  143. package/src/Prebuilt/components/LayoutModeSelector.tsx +0 -112
  144. package/src/Prebuilt/components/Leave/DesktopLeaveRoom.tsx +0 -166
  145. package/src/Prebuilt/components/Leave/EndSessionContent.tsx +0 -64
  146. package/src/Prebuilt/components/Leave/LeaveAtoms.tsx +0 -26
  147. package/src/Prebuilt/components/Leave/LeaveCard.tsx +0 -36
  148. package/src/Prebuilt/components/Leave/LeaveRoom.tsx +0 -82
  149. package/src/Prebuilt/components/Leave/LeaveSessionContent.tsx +0 -61
  150. package/src/Prebuilt/components/Leave/MwebLeaveRoom.tsx +0 -135
  151. package/src/Prebuilt/components/LeaveScreen.tsx +0 -71
  152. package/src/Prebuilt/components/MoreSettings/ActionTile.jsx +0 -60
  153. package/src/Prebuilt/components/MoreSettings/BulkRoleChangeModal.jsx +0 -139
  154. package/src/Prebuilt/components/MoreSettings/CaptionContent.tsx +0 -143
  155. package/src/Prebuilt/components/MoreSettings/CaptionModal.tsx +0 -37
  156. package/src/Prebuilt/components/MoreSettings/ChangeNameContent.tsx +0 -123
  157. package/src/Prebuilt/components/MoreSettings/ChangeNameModal.tsx +0 -78
  158. package/src/Prebuilt/components/MoreSettings/EmbedUrl.jsx +0 -81
  159. package/src/Prebuilt/components/MoreSettings/FullScreenItem.tsx +0 -26
  160. package/src/Prebuilt/components/MoreSettings/MoreSettings.tsx +0 -29
  161. package/src/Prebuilt/components/MoreSettings/MuteAllContent.tsx +0 -81
  162. package/src/Prebuilt/components/MoreSettings/MuteAllModal.tsx +0 -72
  163. package/src/Prebuilt/components/MoreSettings/SplitComponents/DesktopOptions.tsx +0 -282
  164. package/src/Prebuilt/components/MoreSettings/SplitComponents/MwebOptions.tsx +0 -387
  165. package/src/Prebuilt/components/MoreSettings/constants.ts +0 -14
  166. package/src/Prebuilt/components/MwebLandscapePrompt.tsx +0 -81
  167. package/src/Prebuilt/components/Notifications/AutoplayBlockedModal.tsx +0 -39
  168. package/src/Prebuilt/components/Notifications/ChatNotifications.tsx +0 -34
  169. package/src/Prebuilt/components/Notifications/DeviceChangeNotifications.tsx +0 -18
  170. package/src/Prebuilt/components/Notifications/DeviceInUseError.tsx +0 -86
  171. package/src/Prebuilt/components/Notifications/ErrorNotifications.tsx +0 -56
  172. package/src/Prebuilt/components/Notifications/HLSFailureModal.tsx +0 -71
  173. package/src/Prebuilt/components/Notifications/HandRaisedNotifications.tsx +0 -78
  174. package/src/Prebuilt/components/Notifications/InitErrorModal.tsx +0 -42
  175. package/src/Prebuilt/components/Notifications/MessageNotifications.tsx +0 -24
  176. package/src/Prebuilt/components/Notifications/Notifications.tsx +0 -65
  177. package/src/Prebuilt/components/Notifications/PeerNotifications.tsx +0 -52
  178. package/src/Prebuilt/components/Notifications/PermissionErrorModal.tsx +0 -144
  179. package/src/Prebuilt/components/Notifications/PollNotificationModal.tsx +0 -71
  180. package/src/Prebuilt/components/Notifications/ReconnectNotifications.tsx +0 -33
  181. package/src/Prebuilt/components/Notifications/RoleChangeNotification.tsx +0 -24
  182. package/src/Prebuilt/components/Notifications/TrackBulkUnmuteModal.tsx +0 -61
  183. package/src/Prebuilt/components/Notifications/TrackNotifications.tsx +0 -41
  184. package/src/Prebuilt/components/Notifications/TrackUnmuteModal.tsx +0 -63
  185. package/src/Prebuilt/components/Notifications/TranscriptionNotifications.tsx +0 -58
  186. package/src/Prebuilt/components/Notifications/index.tsx +0 -1
  187. package/src/Prebuilt/components/PIP/PIPChat.tsx +0 -292
  188. package/src/Prebuilt/components/PIP/PIPChatOption.tsx +0 -18
  189. package/src/Prebuilt/components/PIP/PIPComponent.tsx +0 -90
  190. package/src/Prebuilt/components/PIP/PIPManager.ts +0 -335
  191. package/src/Prebuilt/components/PIP/PIPProvider.tsx +0 -56
  192. package/src/Prebuilt/components/PIP/PIPWindow.tsx +0 -13
  193. package/src/Prebuilt/components/PIP/SetupMediaSession.js +0 -60
  194. package/src/Prebuilt/components/PIP/context.ts +0 -10
  195. package/src/Prebuilt/components/PIP/index.jsx +0 -6
  196. package/src/Prebuilt/components/PIP/pip.test.js +0 -72
  197. package/src/Prebuilt/components/PIP/pipUtils.js +0 -183
  198. package/src/Prebuilt/components/PIP/usePIPChat.tsx +0 -105
  199. package/src/Prebuilt/components/PIP/usePIPWindow.tsx +0 -12
  200. package/src/Prebuilt/components/Pagination.tsx +0 -60
  201. package/src/Prebuilt/components/Polls/CreatePollQuiz/PollsQuizMenu.tsx +0 -248
  202. package/src/Prebuilt/components/Polls/CreateQuestions/CreateQuestions.jsx +0 -142
  203. package/src/Prebuilt/components/Polls/CreateQuestions/DeleteQuestionModal.tsx +0 -74
  204. package/src/Prebuilt/components/Polls/CreateQuestions/QuestionForm.tsx +0 -324
  205. package/src/Prebuilt/components/Polls/CreateQuestions/SavedQuestion.tsx +0 -64
  206. package/src/Prebuilt/components/Polls/Polls.tsx +0 -31
  207. package/src/Prebuilt/components/Polls/Voting/LeaderboardEntry.tsx +0 -76
  208. package/src/Prebuilt/components/Polls/Voting/LeaderboardSummary.tsx +0 -116
  209. package/src/Prebuilt/components/Polls/Voting/PeerParticipationSummary.tsx +0 -60
  210. package/src/Prebuilt/components/Polls/Voting/QuestionCard.jsx +0 -221
  211. package/src/Prebuilt/components/Polls/Voting/StandardVoting.tsx +0 -47
  212. package/src/Prebuilt/components/Polls/Voting/StatisticBox.tsx +0 -20
  213. package/src/Prebuilt/components/Polls/Voting/TimedVoting.tsx +0 -55
  214. package/src/Prebuilt/components/Polls/Voting/Voting.tsx +0 -143
  215. package/src/Prebuilt/components/Polls/Voting/useQuizSummary.tsx +0 -50
  216. package/src/Prebuilt/components/Polls/common/Line.tsx +0 -4
  217. package/src/Prebuilt/components/Polls/common/MultipleChoiceOptions.jsx +0 -115
  218. package/src/Prebuilt/components/Polls/common/OptionInputWithDelete.tsx +0 -38
  219. package/src/Prebuilt/components/Polls/common/SingleChoiceOptions.jsx +0 -140
  220. package/src/Prebuilt/components/Polls/common/StatusIndicator.tsx +0 -35
  221. package/src/Prebuilt/components/Polls/common/VoteCount.tsx +0 -15
  222. package/src/Prebuilt/components/Polls/common/VoteProgress.tsx +0 -18
  223. package/src/Prebuilt/components/Polls/common/constants.ts +0 -5
  224. package/src/Prebuilt/components/Polls/common/utils.ts +0 -22
  225. package/src/Prebuilt/components/Preview/PreviewForm.tsx +0 -94
  226. package/src/Prebuilt/components/Preview/PreviewJoin.tsx +0 -292
  227. package/src/Prebuilt/components/Preview/PreviewScreen.tsx +0 -38
  228. package/src/Prebuilt/components/PreviousRoleInMetadata.tsx +0 -20
  229. package/src/Prebuilt/components/RaiseHand.tsx +0 -30
  230. package/src/Prebuilt/components/RemoveParticipant.tsx +0 -35
  231. package/src/Prebuilt/components/RoleChangeModal.tsx +0 -188
  232. package/src/Prebuilt/components/RoleChangeRequest/RequestPrompt.tsx +0 -75
  233. package/src/Prebuilt/components/RoleChangeRequest/RoleChangeRequestModal.tsx +0 -94
  234. package/src/Prebuilt/components/RoomDetails/Duration.tsx +0 -26
  235. package/src/Prebuilt/components/RoomDetails/RoomDetailsPane.tsx +0 -63
  236. package/src/Prebuilt/components/RoomDetails/RoomDetailsRow.tsx +0 -23
  237. package/src/Prebuilt/components/RoomDetails/RoomDetailsSheet.tsx +0 -45
  238. package/src/Prebuilt/components/ScreenShareToggle.jsx +0 -58
  239. package/src/Prebuilt/components/ScreenshareDisplay.tsx +0 -39
  240. package/src/Prebuilt/components/ScreenshareTile.tsx +0 -134
  241. package/src/Prebuilt/components/SecondaryTiles.tsx +0 -81
  242. package/src/Prebuilt/components/Settings/DeviceSettings.jsx +0 -208
  243. package/src/Prebuilt/components/Settings/LayoutSettings.tsx +0 -74
  244. package/src/Prebuilt/components/Settings/NotificationSettings.tsx +0 -66
  245. package/src/Prebuilt/components/Settings/SettingsModal.jsx +0 -301
  246. package/src/Prebuilt/components/Settings/StartRecording.jsx +0 -101
  247. package/src/Prebuilt/components/Settings/SwitchWithLabel.tsx +0 -53
  248. package/src/Prebuilt/components/Settings/common.ts +0 -16
  249. package/src/Prebuilt/components/ShareMenuIcon.jsx +0 -27
  250. package/src/Prebuilt/components/SidePaneTabs.tsx +0 -214
  251. package/src/Prebuilt/components/StatsForNerds.jsx +0 -373
  252. package/src/Prebuilt/components/Streaming/Common.jsx +0 -143
  253. package/src/Prebuilt/components/Streaming/ResolutionInput.jsx +0 -88
  254. package/src/Prebuilt/components/TileMenu/TileMenu.tsx +0 -148
  255. package/src/Prebuilt/components/TileMenu/TileMenuContent.tsx +0 -393
  256. package/src/Prebuilt/components/TileMenu/utils.ts +0 -7
  257. package/src/Prebuilt/components/Toast/Toast.jsx +0 -17
  258. package/src/Prebuilt/components/Toast/ToastBatcher.js +0 -64
  259. package/src/Prebuilt/components/Toast/ToastConfig.jsx +0 -177
  260. package/src/Prebuilt/components/Toast/ToastContainer.jsx +0 -30
  261. package/src/Prebuilt/components/Toast/ToastManager.js +0 -44
  262. package/src/Prebuilt/components/VideoLayouts/EqualProminence.tsx +0 -62
  263. package/src/Prebuilt/components/VideoLayouts/Grid.tsx +0 -43
  264. package/src/Prebuilt/components/VideoLayouts/GridLayout.tsx +0 -155
  265. package/src/Prebuilt/components/VideoLayouts/ProminenceLayout.tsx +0 -91
  266. package/src/Prebuilt/components/VideoLayouts/RoleProminence.tsx +0 -66
  267. package/src/Prebuilt/components/VideoLayouts/ScreenshareLayout.tsx +0 -74
  268. package/src/Prebuilt/components/VideoLayouts/WhiteboardLayout.tsx +0 -93
  269. package/src/Prebuilt/components/VideoLayouts/interface.ts +0 -11
  270. package/src/Prebuilt/components/VideoTile.tsx +0 -203
  271. package/src/Prebuilt/components/VirtualBackground/VBCollection.tsx +0 -52
  272. package/src/Prebuilt/components/VirtualBackground/VBHandler.tsx +0 -130
  273. package/src/Prebuilt/components/VirtualBackground/VBOption.tsx +0 -57
  274. package/src/Prebuilt/components/VirtualBackground/VBPicker.tsx +0 -252
  275. package/src/Prebuilt/components/VirtualBackground/VBToggle.tsx +0 -50
  276. package/src/Prebuilt/components/hooks/useAudioOutputTest.tsx +0 -20
  277. package/src/Prebuilt/components/hooks/useAutoStartStreaming.tsx +0 -70
  278. package/src/Prebuilt/components/hooks/useChatBlacklist.ts +0 -29
  279. package/src/Prebuilt/components/hooks/useCloseScreenshareWhiteboard.tsx +0 -17
  280. package/src/Prebuilt/components/hooks/useDropdownList.ts +0 -24
  281. package/src/Prebuilt/components/hooks/useDropdownSelection.jsx +0 -3
  282. package/src/Prebuilt/components/hooks/useFullscreen.ts +0 -46
  283. package/src/Prebuilt/components/hooks/useGroupOnStageActions.tsx +0 -54
  284. package/src/Prebuilt/components/hooks/useMetadata.tsx +0 -56
  285. package/src/Prebuilt/components/hooks/usePeerOnStageActions.tsx +0 -49
  286. package/src/Prebuilt/components/hooks/usePinnedBy.tsx +0 -22
  287. package/src/Prebuilt/components/hooks/usePinnedMessages.ts +0 -78
  288. package/src/Prebuilt/components/hooks/usePlaylist.js +0 -25
  289. package/src/Prebuilt/components/hooks/usePlaylistMusic.js +0 -35
  290. package/src/Prebuilt/components/hooks/useRedirectToLeave.tsx +0 -23
  291. package/src/Prebuilt/components/hooks/useRoleProminencePeers.tsx +0 -39
  292. package/src/Prebuilt/components/hooks/useScreenshareAudio.js +0 -28
  293. package/src/Prebuilt/components/hooks/useTileLayout.tsx +0 -128
  294. package/src/Prebuilt/components/hooks/useUnreadPollQuizPresent.tsx +0 -17
  295. package/src/Prebuilt/components/hooks/useUserPreferences.jsx +0 -26
  296. package/src/Prebuilt/components/hooks/useVideoTileLayout.ts +0 -26
  297. package/src/Prebuilt/components/init/Init.jsx +0 -31
  298. package/src/Prebuilt/components/pdfAnnotator/pdfFileOptions.jsx +0 -42
  299. package/src/Prebuilt/components/pdfAnnotator/pdfHeader.jsx +0 -31
  300. package/src/Prebuilt/components/pdfAnnotator/pdfInfo.jsx +0 -32
  301. package/src/Prebuilt/components/pdfAnnotator/shareScreenOptions.jsx +0 -211
  302. package/src/Prebuilt/components/pdfAnnotator/submitPdf.jsx +0 -48
  303. package/src/Prebuilt/components/pdfAnnotator/uploadedFile.jsx +0 -71
  304. package/src/Prebuilt/components/peerTileUtils.tsx +0 -42
  305. package/src/Prebuilt/images/android-perm-1.png +0 -0
  306. package/src/Prebuilt/images/empty-chat.svg +0 -12
  307. package/src/Prebuilt/images/ios-perm-0.png +0 -0
  308. package/src/Prebuilt/images/pdf-share.png +0 -0
  309. package/src/Prebuilt/images/rtmp.png +0 -0
  310. package/src/Prebuilt/images/screen-share.png +0 -0
  311. package/src/Prebuilt/images/transaction_error.svg +0 -12
  312. package/src/Prebuilt/index.ts +0 -1
  313. package/src/Prebuilt/layouts/EmbedView.jsx +0 -94
  314. package/src/Prebuilt/layouts/HLSView.jsx +0 -747
  315. package/src/Prebuilt/layouts/PDFView.jsx +0 -67
  316. package/src/Prebuilt/layouts/Sheet.tsx +0 -14
  317. package/src/Prebuilt/layouts/SidePane.tsx +0 -241
  318. package/src/Prebuilt/layouts/VideoStreamingSection.tsx +0 -164
  319. package/src/Prebuilt/layouts/WaitingView.tsx +0 -52
  320. package/src/Prebuilt/plugins/CaptionsViewer.tsx +0 -261
  321. package/src/Prebuilt/plugins/FlyingEmoji.jsx +0 -154
  322. package/src/Prebuilt/plugins/RemoteStopScreenshare.jsx +0 -18
  323. package/src/Prebuilt/plugins/transcription/Transcriber.js +0 -216
  324. package/src/Prebuilt/plugins/transcription/TranscriptionButton.jsx +0 -138
  325. package/src/Prebuilt/plugins/transcription/index.jsx +0 -1
  326. package/src/Prebuilt/primitives/DialogContent.jsx +0 -285
  327. package/src/Prebuilt/primitives/DropdownTrigger.jsx +0 -46
  328. package/src/Prebuilt/provider/roomLayoutProvider/constants/index.ts +0 -60
  329. package/src/Prebuilt/provider/roomLayoutProvider/hooks/useFetchRoomLayout.ts +0 -88
  330. package/src/Prebuilt/provider/roomLayoutProvider/hooks/useInsetEnabled.ts +0 -10
  331. package/src/Prebuilt/provider/roomLayoutProvider/hooks/useRoomLayoutScreen.ts +0 -112
  332. package/src/Prebuilt/provider/roomLayoutProvider/index.tsx +0 -53
  333. package/src/Prebuilt/services/FeatureFlags.jsx +0 -46
  334. package/src/Progress/index.tsx +0 -17
  335. package/src/QRCode/QRCode.tsx +0 -6
  336. package/src/QRCode/index.tsx +0 -1
  337. package/src/RadioGroup/RadioGroup.tsx +0 -33
  338. package/src/RadioGroup/index.tsx +0 -1
  339. package/src/ReactSelect/ReactSelect.tsx +0 -97
  340. package/src/ReactSelect/index.ts +0 -1
  341. package/src/Select/Select.tsx +0 -63
  342. package/src/Select/index.ts +0 -1
  343. package/src/Sheet/Sheet.tsx +0 -122
  344. package/src/Sheet/index.ts +0 -1
  345. package/src/Slider/Slider.tsx +0 -70
  346. package/src/Slider/index.ts +0 -1
  347. package/src/Stats/Stats.tsx +0 -243
  348. package/src/Stats/StyledStats.tsx +0 -57
  349. package/src/Stats/formatBytes.ts +0 -19
  350. package/src/Stats/index.tsx +0 -2
  351. package/src/Stats/useQoE.ts +0 -79
  352. package/src/Switch/Switch.tsx +0 -52
  353. package/src/Switch/index.ts +0 -1
  354. package/src/Tabs/Tabs.tsx +0 -41
  355. package/src/Tabs/index.tsx +0 -1
  356. package/src/Text/Text.tsx +0 -149
  357. package/src/Text/index.tsx +0 -1
  358. package/src/TextArea/TextArea.tsx +0 -30
  359. package/src/TextArea/index.tsx +0 -1
  360. package/src/Theme/ThemeProvider.tsx +0 -98
  361. package/src/Theme/base.config.ts +0 -236
  362. package/src/Theme/index.tsx +0 -2
  363. package/src/Theme/stitches.config.ts +0 -88
  364. package/src/Theme/useSSR.tsx +0 -24
  365. package/src/TileMenu/StyledMenuTile.tsx +0 -105
  366. package/src/TileMenu/TileMenu.tsx +0 -98
  367. package/src/TileMenu/index.tsx +0 -1
  368. package/src/Toast/Toast.tsx +0 -170
  369. package/src/Toast/index.tsx +0 -1
  370. package/src/Tooltip/Tooltip.tsx +0 -79
  371. package/src/Tooltip/index.ts +0 -1
  372. package/src/Video/Video.tsx +0 -61
  373. package/src/Video/index.tsx +0 -1
  374. package/src/VideoList/StyledVideoList.tsx +0 -39
  375. package/src/VideoList/index.tsx +0 -2
  376. package/src/VideoList/videoListUtils.tsx +0 -20
  377. package/src/VideoTile/StyledVideoTile.tsx +0 -146
  378. package/src/VideoTile/index.tsx +0 -1
  379. package/src/context/DialogContext.tsx +0 -13
  380. package/src/fixtures/chats.ts +0 -25
  381. package/src/fixtures/peers.ts +0 -27
  382. package/src/fixtures/tracks.ts +0 -11
  383. package/src/hooks/useDialogContainerSelector.tsx +0 -7
  384. package/src/index.ts +0 -41
  385. package/src/store/SetupFakeStore.ts +0 -33
  386. package/src/store/StorybookSDK.ts +0 -231
  387. package/src/utils/animations.ts +0 -114
  388. package/src/utils/index.ts +0 -2
  389. package/src/utils/styles.ts +0 -22
package/src/Link/Link.tsx DELETED
@@ -1,54 +0,0 @@
1
- import React from 'react';
2
- import * as icons from '@100mslive/react-icons';
3
- import { Flex } from '../Layout';
4
- import { Text } from '../Text';
5
- import { styled } from '../Theme';
6
-
7
- const LinkComponent = styled('a', {
8
- textDecoration: 'none',
9
- display: 'flex',
10
- alignItems: 'center',
11
- gap: '$5',
12
- variants: {
13
- color: {
14
- highEmp: {
15
- color: '$on_surface_high',
16
- '&:hover': {
17
- color: '$on_surface_medium',
18
- },
19
- },
20
- primary: {
21
- color: '$primary_default',
22
- '&:hover': {
23
- color: '$primary_bright',
24
- },
25
- },
26
- },
27
- },
28
- });
29
-
30
- export interface LinkProps extends React.ComponentProps<typeof LinkComponent> {
31
- as?: React.ElementType;
32
- iconSide?: 'left' | 'right' | 'none';
33
- icon?: keyof typeof icons;
34
- color?: 'highEmp' | 'primary';
35
- }
36
-
37
- export const Link = ({ iconSide = 'left', icon, color = 'primary', children, ...rest }: LinkProps) => {
38
- const Icon = icon ? icons[icon] : React.Fragment;
39
- const renderedIcon = icon ? (
40
- <Flex as="span">
41
- <Icon height={13.33} width={13.33} />{' '}
42
- </Flex>
43
- ) : null;
44
-
45
- return (
46
- <LinkComponent {...rest} color={color}>
47
- {iconSide === 'left' && renderedIcon}
48
- <Text as="span" variant="body2" css={{ color: 'inherit' }}>
49
- {children}
50
- </Text>
51
- {iconSide === 'right' && renderedIcon}
52
- </LinkComponent>
53
- );
54
- };
@@ -1,2 +0,0 @@
1
- export { Link } from './Link';
2
- export type { LinkProps } from './Link';
@@ -1,30 +0,0 @@
1
- import React from 'react';
2
-
3
- type Props = {
4
- /**
5
- * Adjusts width and height
6
- */
7
- size?: number | string;
8
- /**
9
- * Color of Loader
10
- */
11
- color?: string;
12
- };
13
-
14
- type LoadingProps = Props & React.SVGProps<SVGSVGElement>;
15
-
16
- export const Loading = ({ size = 24, color = 'white', ...props }: LoadingProps) => (
17
- <svg width={size} height={size} viewBox="0 0 50 50" fill={color} xmlns="http://www.w3.org/2000/svg" {...props}>
18
- <circle cx="25" cy="25" r="20" stroke={color} strokeWidth="4" strokeDasharray="70 30" fill="none">
19
- <animateTransform
20
- attributeName="transform"
21
- attributeType="XML"
22
- type="rotate"
23
- from="0 25 25"
24
- to="360 25 25"
25
- dur="1s"
26
- repeatCount="indefinite"
27
- />
28
- </circle>
29
- </svg>
30
- );
@@ -1 +0,0 @@
1
- export { Loading } from './Loading';
@@ -1,57 +0,0 @@
1
- import React, { ReactNode, useEffect, useRef } from 'react';
2
- import { Root } from '@radix-ui/react-dialog';
3
- import { styled } from '@stitches/react';
4
- import {
5
- CustomDialogContent,
6
- CustomDialogOverlay,
7
- DialogClose,
8
- DialogDefaultCloseIcon,
9
- DialogDescription,
10
- DialogTitle,
11
- StyledDialogPortal,
12
- StyledDialogTrigger,
13
- } from './DialogContent';
14
- import { useDialogContainerSelector } from '../hooks/useDialogContainerSelector';
15
-
16
- const StyledDialog = styled(Root, {});
17
-
18
- // Handles race conditions when multiple elements with dismissable layer are present
19
- // https://github.com/radix-ui/primitives/issues/2122
20
- const DialogRoot = <T extends React.ComponentProps<typeof StyledDialog>>(props: T) => {
21
- useEffect(() => {
22
- return () => {
23
- if (document) setTimeout(() => (document.body.style.pointerEvents = 'auto'), 0);
24
- };
25
- }, []);
26
- return <StyledDialog {...(props as object)} />;
27
- };
28
-
29
- const CustomDialogPortal = ({ children, container }: { children: ReactNode; container?: HTMLElement | null }) => {
30
- const dialogContainerSelector = useDialogContainerSelector();
31
- const containerRef = useRef<HTMLElement | null>(null);
32
-
33
- if (container) {
34
- containerRef.current = container;
35
- } else if (dialogContainerSelector && !containerRef.current) {
36
- containerRef.current = document.querySelector(dialogContainerSelector) as HTMLElement;
37
- } else if (!containerRef.current) {
38
- containerRef.current = document.body;
39
- }
40
- return (
41
- <StyledDialogPortal container={containerRef.current}>
42
- <>{children}</>
43
- </StyledDialogPortal>
44
- );
45
- };
46
-
47
- export const Dialog = {
48
- Root: DialogRoot,
49
- Trigger: StyledDialogTrigger,
50
- Overlay: CustomDialogOverlay,
51
- Content: CustomDialogContent,
52
- Title: DialogTitle,
53
- Description: DialogDescription,
54
- Close: DialogClose,
55
- DefaultClose: DialogDefaultCloseIcon,
56
- Portal: CustomDialogPortal,
57
- };
@@ -1,65 +0,0 @@
1
- import React, { ComponentProps } from 'react';
2
- import * as DialogPrimitive from '@radix-ui/react-dialog';
3
- import { CrossIcon } from '@100mslive/react-icons';
4
- import { IconButton } from '../IconButton';
5
- import { styled } from '../Theme';
6
- import { dialogClose, dialogOpen } from '../utils/animations';
7
-
8
- export const DialogClose = styled(DialogPrimitive.Close, {
9
- backgroundColor: 'transparent',
10
- padding: '0',
11
- margin: '0',
12
- border: 'none',
13
- backgroundImage: 'none',
14
- });
15
-
16
- export const StyledDialogTrigger = styled(DialogPrimitive.Trigger, {
17
- appearance: 'none !important', // Needed for safari it shows white overlay
18
- });
19
-
20
- export const CustomDialogOverlay = styled(DialogPrimitive.Overlay, {
21
- backgroundColor: 'rgba(0, 0, 0, 0.5);',
22
- position: 'absolute',
23
- inset: 0,
24
- });
25
-
26
- export const StyledDialogPortal = styled(DialogPrimitive.Portal, {});
27
-
28
- export const CustomDialogContent = styled(DialogPrimitive.Content, {
29
- color: '$on_surface_medium',
30
- backgroundColor: '$surface_dim',
31
- borderRadius: '8px',
32
- position: 'absolute',
33
- top: '50%',
34
- left: '50%',
35
- maxHeight: '95%',
36
- overflowY: 'auto',
37
- border: '$space$px solid $border_bright',
38
- boxShadow: '0 10px 20px rgba(0,0,0,0.19), 0 6px 6px rgba(0,0,0,0.23)',
39
- transform: 'translate(-50%, -50%)',
40
- zIndex: 999,
41
- padding: '$12',
42
- '@allowMotion': {
43
- '&[data-state="open"]': {
44
- animation: `${dialogOpen} 150ms cubic-bezier(0.16, 1, 0.3, 1)`,
45
- },
46
- '&[data-state="closed"]': {
47
- animation: `${dialogClose} 150ms cubic-bezier(0.16, 1, 0.3, 1)`,
48
- },
49
- },
50
- '&:focus': { outline: 'none' },
51
- });
52
-
53
- export const DialogTitle = styled(DialogPrimitive.Title, {
54
- margin: 0,
55
- });
56
-
57
- export const DialogDescription = styled(DialogPrimitive.Description, {});
58
-
59
- export const DialogDefaultCloseIcon = (props: ComponentProps<typeof IconButton>) => (
60
- <DialogClose asChild>
61
- <IconButton {...props}>
62
- <CrossIcon />
63
- </IconButton>
64
- </DialogClose>
65
- );
@@ -1 +0,0 @@
1
- export { Dialog } from './Dialog';
@@ -1,70 +0,0 @@
1
- import { styled } from '../Theme';
2
-
3
- const Root = styled('div', {
4
- height: '2rem',
5
- display: 'flex',
6
- justifyContent: 'center',
7
- alignItems: 'center',
8
- width: '100%',
9
- '& > * + *': {
10
- marginRight: '0',
11
- marginLeft: '0.5rem',
12
- },
13
- });
14
-
15
- const Chevron = styled('button', {
16
- color: '$on_surface_high',
17
- border: 'none',
18
- '&:focus': {
19
- outline: 'none',
20
- },
21
- '&[disabled]': {
22
- color: '$on_surface_low',
23
- cursor: 'not-allowed',
24
- },
25
- backgroundColor: 'transparent',
26
- display: 'flex',
27
- });
28
-
29
- const Dots = styled('div', {
30
- display: 'flex',
31
- alignItems: 'center',
32
- '& > * + *': {
33
- marginRight: '0',
34
- marginLeft: '0.5rem',
35
- },
36
- });
37
-
38
- const Dot = styled('button', {
39
- '&:focus': {
40
- outline: 'none',
41
- },
42
- borderRadius: '9999px',
43
- width: '0.5rem',
44
- height: '0.5rem',
45
- backgroundColor: '$on_surface_low',
46
- padding: '0px',
47
- border: 'none',
48
- cursor: 'pointer',
49
- variants: {
50
- active: {
51
- true: {
52
- backgroundColor: '$on_surface_high',
53
- },
54
- },
55
- },
56
- });
57
-
58
- interface PaginationType {
59
- Root: typeof Root;
60
- Chevron: typeof Chevron;
61
- Dots: typeof Dots;
62
- Dot: typeof Dot;
63
- }
64
-
65
- export const StyledPagination: PaginationType = {
66
- Root,
67
- Chevron,
68
- Dots,
69
- Dot,
70
- };
@@ -1 +0,0 @@
1
- export { StyledPagination } from './StyledPagination';
@@ -1,34 +0,0 @@
1
- import { Arrow, Close, Content, Popover as Root, Portal, Trigger } from '@radix-ui/react-popover';
2
- import { styled } from '../Theme';
3
- import { popoverAnimation } from '../utils/animations';
4
-
5
- const StyledContent = styled(Content, {
6
- padding: '$6',
7
- borderRadius: '$2',
8
- backgroundColor: '$background_default',
9
- boxShadow: '$sm',
10
- zIndex: 12,
11
- ...popoverAnimation,
12
- });
13
-
14
- const StyledArrow = styled(Arrow, {
15
- ...popoverAnimation,
16
- });
17
-
18
- const StyledTrigger = styled(Trigger, {
19
- '&:hover': {
20
- cursor: 'pointer',
21
- },
22
- '&:focus-visible': {
23
- boxShadow: '0 0 0 3px $colors$primary_default',
24
- },
25
- });
26
-
27
- export const Popover = {
28
- Root,
29
- Content: StyledContent,
30
- Trigger: StyledTrigger,
31
- Portal: Portal,
32
- Arrow: StyledArrow,
33
- Close: Close,
34
- };
@@ -1,318 +0,0 @@
1
- import React, { MutableRefObject, useEffect, useRef } from 'react';
2
- import { Layout, Logo, Screens, Theme, Typography } from '@100mslive/types-prebuilt';
3
- import { match } from 'ts-pattern';
4
- import {
5
- HMSActions,
6
- HMSReactiveStore,
7
- HMSRoomProvider,
8
- HMSStatsStoreWrapper,
9
- HMSStoreWrapper,
10
- IHMSNotifications,
11
- selectIsConnectedToRoom,
12
- useHMSActions,
13
- useHMSStore,
14
- } from '@100mslive/react-sdk';
15
- import { AppData } from './components/AppData/AppData';
16
- // @ts-ignore: No implicit Any
17
- import AuthToken from './components/AuthToken';
18
- import { ConferenceScreen } from './components/ConferenceScreen';
19
- // @ts-ignore: No implicit Any
20
- import { ErrorBoundary } from './components/ErrorBoundary';
21
- // @ts-ignore: No implicit Any
22
- import { Init } from './components/init/Init';
23
- // @ts-ignore: No implicit Any
24
- import { KeyboardHandler } from './components/Input/KeyboardInputManager';
25
- import { LeaveScreen } from './components/LeaveScreen';
26
- import { MwebLandscapePrompt } from './components/MwebLandscapePrompt';
27
- import { Notifications } from './components/Notifications';
28
- import { PIPProvider } from './components/PIP/PIPProvider';
29
- import { PreviewScreen } from './components/Preview/PreviewScreen';
30
- // @ts-ignore: No implicit Any
31
- import { ToastContainer } from './components/Toast/ToastContainer';
32
- import { Sheet } from './layouts/Sheet';
33
- import { RoomLayoutContext, RoomLayoutProvider, useRoomLayout } from './provider/roomLayoutProvider';
34
- import { DialogContainerProvider } from '../context/DialogContext';
35
- import { Box } from '../Layout';
36
- import { globalStyles, HMSThemeProvider } from '../Theme';
37
- import { HMSPrebuiltContext } from './AppContext';
38
- import { AppStateContext, PrebuiltStates, useAppStateManager } from './AppStateContext';
39
- // @ts-ignore: No implicit Any
40
- import { FlyingEmoji } from './plugins/FlyingEmoji';
41
- // @ts-ignore: No implicit Any
42
- import { RemoteStopScreenshare } from './plugins/RemoteStopScreenshare';
43
- // @ts-ignore: No implicit Any
44
- import { useIsNotificationDisabled } from './components/AppData/useUISettings';
45
- import { useAutoStartStreaming } from './components/hooks/useAutoStartStreaming';
46
- import {
47
- useRoomLayoutLeaveScreen,
48
- useRoomLayoutPreviewScreen,
49
- } from './provider/roomLayoutProvider/hooks/useRoomLayoutScreen';
50
- // @ts-ignore: No implicit Any
51
- import { FeatureFlags } from './services/FeatureFlags';
52
- // @ts-ignore: No implicit Any
53
- import { DEFAULT_PORTAL_CONTAINER } from './common/constants';
54
-
55
- export type HMSPrebuiltOptions = {
56
- userName?: string;
57
- userId?: string;
58
- endpoints?: object;
59
- effectsSDKKey?: string;
60
- };
61
-
62
- export type HMSPrebuiltProps = {
63
- roomCode?: string;
64
- logo?: Logo;
65
- typography?: Typography;
66
- themes?: Theme[];
67
- options?: HMSPrebuiltOptions;
68
- screens?: Screens;
69
- authToken?: string;
70
- leaveOnUnload?: boolean;
71
- onLeave?: () => void;
72
- onJoin?: () => void;
73
- /**
74
- * @remarks
75
- * Specify css selectors for the HTML element to be used as container for dialogs. Affects the positioning and focus of dialogs.
76
- */
77
- containerSelector?: string;
78
- };
79
-
80
- export type HMSPrebuiltRefType = {
81
- hmsActions: HMSActions;
82
- hmsStore: HMSStoreWrapper;
83
- hmsStats: HMSStatsStoreWrapper;
84
- hmsNotifications: IHMSNotifications;
85
- };
86
-
87
- export const HMSPrebuilt = React.forwardRef<HMSPrebuiltRefType, HMSPrebuiltProps>(
88
- (
89
- {
90
- roomCode = '',
91
- authToken = '',
92
- containerSelector = DEFAULT_PORTAL_CONTAINER,
93
- logo,
94
- typography,
95
- themes,
96
- options: { userName = '', userId = '', endpoints } = {},
97
- screens,
98
- leaveOnUnload = true,
99
- onLeave,
100
- onJoin,
101
- },
102
- ref,
103
- ) => {
104
- const reactiveStore = useRef<HMSPrebuiltRefType>();
105
- const [hydrated, setHydrated] = React.useState(false);
106
-
107
- useEffect(() => {
108
- setHydrated(true);
109
- const hms = new HMSReactiveStore();
110
- const hmsStore = hms.getStore();
111
- const hmsActions = hms.getActions();
112
- const hmsNotifications = hms.getNotifications();
113
- const hmsStats = hms.getStats();
114
- hms.triggerOnSubscribe();
115
-
116
- reactiveStore.current = {
117
- hmsActions,
118
- hmsStats,
119
- hmsStore,
120
- hmsNotifications,
121
- };
122
- }, []);
123
-
124
- useEffect(() => {
125
- if (!ref || !reactiveStore.current) {
126
- return;
127
- }
128
- (ref as MutableRefObject<HMSPrebuiltRefType>).current = { ...reactiveStore.current };
129
- }, [ref]);
130
-
131
- useEffect(() => {
132
- // leave room when component unmounts
133
- return () => {
134
- reactiveStore?.current?.hmsActions.leave();
135
- };
136
- }, []);
137
-
138
- const endpointsObj = endpoints as
139
- | {
140
- init: string;
141
- tokenByRoomCode: string;
142
- roomLayout: string;
143
- event: string;
144
- }
145
- | undefined;
146
- const tokenByRoomCodeEndpoint = endpointsObj?.tokenByRoomCode;
147
- const initEndpoint = endpointsObj?.init;
148
- const eventEndpoint = endpointsObj?.event;
149
- const roomLayoutEndpoint = endpointsObj?.roomLayout;
150
-
151
- const overrideLayout: Partial<Layout> = {
152
- logo,
153
- themes,
154
- typography,
155
- screens,
156
- };
157
-
158
- if (!roomCode && !authToken) {
159
- console.error(`
160
- HMSPrebuilt can be initialised by providing:
161
- either "roomCode" or "authToken".
162
- Please check if you are providing the above values for initialising prebuilt.
163
- `);
164
- throw Error('Incorrect initializing params for HMSPrebuilt component');
165
- }
166
-
167
- if (!hydrated) {
168
- return null;
169
- }
170
-
171
- globalStyles();
172
-
173
- return (
174
- <ErrorBoundary>
175
- <HMSPrebuiltContext.Provider
176
- value={{
177
- roomCode,
178
- containerSelector,
179
- onLeave,
180
- onJoin,
181
- userName,
182
- userId,
183
- endpoints: {
184
- tokenByRoomCode: tokenByRoomCodeEndpoint,
185
- init: initEndpoint,
186
- roomLayout: roomLayoutEndpoint,
187
- event: eventEndpoint,
188
- },
189
- }}
190
- >
191
- <HMSRoomProvider
192
- isHMSStatsOn={FeatureFlags.enableStatsForNerds}
193
- actions={reactiveStore.current?.hmsActions}
194
- store={reactiveStore.current?.hmsStore}
195
- notifications={reactiveStore.current?.hmsNotifications}
196
- stats={reactiveStore.current?.hmsStats}
197
- leaveOnUnload={leaveOnUnload}
198
- >
199
- <RoomLayoutProvider roomLayoutEndpoint={roomLayoutEndpoint} overrideLayout={overrideLayout}>
200
- <RoomLayoutContext.Consumer>
201
- {data => {
202
- const layout = data?.layout;
203
- const theme: Theme = layout?.themes?.[0] || ({} as Theme);
204
- const { typography } = layout || {};
205
- let fontFamily = ['sans-serif'];
206
- if (typography?.font_family) {
207
- fontFamily = [`${typography?.font_family}`, ...fontFamily];
208
- }
209
-
210
- return (
211
- <HMSThemeProvider
212
- // issue is with stitches caching the theme using the theme name / class
213
- // no updates to the themes are fired if the name is same.
214
- // TODO: cache the theme and do deep check to trigger name change in the theme
215
- themeType={`${theme.name}-${Date.now()}`}
216
- theme={{
217
- //@ts-ignore: Prebuilt theme to match stitches theme
218
- colors: theme.palette,
219
- fonts: {
220
- //@ts-ignore: font list to match token types of stitches
221
- sans: fontFamily,
222
- },
223
- }}
224
- >
225
- <PIPProvider>
226
- <Init />
227
- <DialogContainerProvider dialogContainerSelector={containerSelector}>
228
- <Box
229
- className={DEFAULT_PORTAL_CONTAINER.slice(1)} // Skips the '.' in the selector
230
- css={{
231
- bg: '$background_dim',
232
- size: '100%',
233
- lineHeight: '1.5',
234
- '-webkit-text-size-adjust': '100%',
235
- position: 'relative',
236
- }}
237
- >
238
- <AppRoutes
239
- authTokenByRoomCodeEndpoint={tokenByRoomCodeEndpoint}
240
- defaultAuthToken={authToken}
241
- />
242
- </Box>
243
- </DialogContainerProvider>
244
- </PIPProvider>
245
- </HMSThemeProvider>
246
- );
247
- }}
248
- </RoomLayoutContext.Consumer>
249
- </RoomLayoutProvider>
250
- </HMSRoomProvider>
251
- </HMSPrebuiltContext.Provider>
252
- </ErrorBoundary>
253
- );
254
- },
255
- );
256
-
257
- HMSPrebuilt.displayName = 'HMSPrebuilt';
258
-
259
- const AppStates = ({ activeState }: { activeState: PrebuiltStates }) => {
260
- const { isPreviewScreenEnabled } = useRoomLayoutPreviewScreen();
261
- const { isLeaveScreenEnabled } = useRoomLayoutLeaveScreen();
262
- useAutoStartStreaming();
263
-
264
- return match({ activeState, isPreviewScreenEnabled, isLeaveScreenEnabled })
265
- .with({ activeState: PrebuiltStates.PREVIEW, isPreviewScreenEnabled: true }, () => <PreviewScreen />)
266
- .with({ activeState: PrebuiltStates.LEAVE, isLeaveScreenEnabled: true }, () => <LeaveScreen />)
267
- .otherwise(() => <ConferenceScreen />);
268
- };
269
-
270
- const BackSwipe = () => {
271
- const isConnectedToRoom = useHMSStore(selectIsConnectedToRoom);
272
- const hmsActions = useHMSActions();
273
- useEffect(() => {
274
- const onRouteLeave = async () => {
275
- if (isConnectedToRoom) {
276
- await hmsActions.leave();
277
- }
278
- };
279
- window.addEventListener('popstate', onRouteLeave);
280
- return () => {
281
- window.removeEventListener('popstate', onRouteLeave);
282
- };
283
- }, [hmsActions, isConnectedToRoom]);
284
- return null;
285
- };
286
-
287
- function AppRoutes({
288
- authTokenByRoomCodeEndpoint,
289
- defaultAuthToken,
290
- }: {
291
- authTokenByRoomCodeEndpoint?: string;
292
- defaultAuthToken?: string;
293
- }) {
294
- const roomLayout = useRoomLayout();
295
- const isNotificationsDisabled = useIsNotificationDisabled();
296
- const { activeState, rejoin } = useAppStateManager();
297
- return (
298
- <AppStateContext.Provider value={{ rejoin }}>
299
- <>
300
- {activeState !== PrebuiltStates.LEAVE && <AppData />}
301
- <ToastContainer />
302
- <Notifications />
303
- <MwebLandscapePrompt />
304
- <Sheet />
305
- <BackSwipe />
306
- {!isNotificationsDisabled && <FlyingEmoji />}
307
- <RemoteStopScreenshare />
308
- <KeyboardHandler />
309
- <AuthToken
310
- authTokenByRoomCodeEndpoint={authTokenByRoomCodeEndpoint}
311
- defaultAuthToken={defaultAuthToken}
312
- activeState={activeState}
313
- />
314
- {roomLayout && activeState && <AppStates activeState={activeState} />}
315
- </>
316
- </AppStateContext.Provider>
317
- );
318
- }
@@ -1,33 +0,0 @@
1
- import React, { useContext } from 'react';
2
- // @ts-ignore
3
- import { DEFAULT_PORTAL_CONTAINER } from './common/constants';
4
-
5
- type HMSPrebuiltContextType = {
6
- roomCode: string;
7
- userName?: string;
8
- userId?: string;
9
- containerSelector: string;
10
- endpoints?: Record<string, string | undefined>;
11
- onLeave?: () => void;
12
- onJoin?: () => void;
13
- };
14
-
15
- export const HMSPrebuiltContext = React.createContext<HMSPrebuiltContextType>({
16
- roomCode: '',
17
- userName: '',
18
- userId: '',
19
- containerSelector: DEFAULT_PORTAL_CONTAINER,
20
- endpoints: {},
21
- onLeave: undefined,
22
- onJoin: undefined,
23
- });
24
-
25
- HMSPrebuiltContext.displayName = 'HMSPrebuiltContext';
26
-
27
- export const useHMSPrebuiltContext = () => {
28
- const context = useContext(HMSPrebuiltContext);
29
- if (!context) {
30
- throw Error('Make sure HMSPrebuiltContext.Provider is present at the top level of your application');
31
- }
32
- return context;
33
- };