@100mslive/roomkit-react 0.4.3-alpha.0 → 0.4.3-alpha.10

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 (442) hide show
  1. package/dist/index.cjs.css +214 -223
  2. package/dist/index.cjs.css.map +3 -3
  3. package/dist/index.cjs.js +489 -727
  4. package/dist/index.cjs.js.map +4 -4
  5. package/dist/index.css +214 -223
  6. package/dist/index.css.map +3 -3
  7. package/dist/index.js +501 -739
  8. package/dist/index.js.map +4 -4
  9. package/dist/meta.cjs.json +93 -149
  10. package/dist/meta.esbuild.json +92 -148
  11. package/package.json +10 -24
  12. package/src/Accordion/Accordion.stories.tsx +0 -50
  13. package/src/Accordion/Accordion.tsx +0 -88
  14. package/src/Accordion/index.ts +0 -8
  15. package/src/AudioLevel/AudioLevel.tsx +0 -84
  16. package/src/AudioLevel/audio-level.png +0 -0
  17. package/src/AudioLevel/index.ts +0 -2
  18. package/src/AudioLevel/useBorderAudioLevel.tsx +0 -34
  19. package/src/Avatar/Avatar.stories.tsx +0 -33
  20. package/src/Avatar/Avatar.tsx +0 -60
  21. package/src/Avatar/getAvatarBg.ts +0 -50
  22. package/src/Avatar/index.ts +0 -1
  23. package/src/Button/Button.mdx +0 -43
  24. package/src/Button/Button.stories.tsx +0 -52
  25. package/src/Button/Button.tsx +0 -210
  26. package/src/Button/index.tsx +0 -1
  27. package/src/Chat/Chat.mdx +0 -39
  28. package/src/Chat/Chat.stories.tsx +0 -39
  29. package/src/Checkbox/Checkbox.stories.tsx +0 -61
  30. package/src/Checkbox/Checkbox.tsx +0 -35
  31. package/src/Checkbox/index.tsx +0 -1
  32. package/src/Collapsible/Collapsible.tsx +0 -34
  33. package/src/Collapsible/index.tsx +0 -1
  34. package/src/Diagnostics/AudioTest.tsx +0 -188
  35. package/src/Diagnostics/BrowserTest.tsx +0 -141
  36. package/src/Diagnostics/ConnectivityTest.tsx +0 -383
  37. package/src/Diagnostics/DeviceSelector.jsx +0 -71
  38. package/src/Diagnostics/Diagnostics.tsx +0 -190
  39. package/src/Diagnostics/DiagnosticsContext.ts +0 -46
  40. package/src/Diagnostics/VideoTest.tsx +0 -72
  41. package/src/Diagnostics/components.tsx +0 -70
  42. package/src/Diagnostics/index.ts +0 -1
  43. package/src/Divider/Divider.tsx +0 -45
  44. package/src/Divider/HorizontalDivider.stories.tsx +0 -34
  45. package/src/Divider/VerticalDivider.stories.tsx +0 -40
  46. package/src/Divider/index.ts +0 -1
  47. package/src/Dropdown/Dropdown.stories.tsx +0 -94
  48. package/src/Dropdown/Dropdown.tsx +0 -145
  49. package/src/Dropdown/index.tsx +0 -1
  50. package/src/Fieldset/Fieldset.stories.tsx +0 -29
  51. package/src/Fieldset/Fieldset.tsx +0 -11
  52. package/src/Fieldset/index.tsx +0 -1
  53. package/src/Footer/Footer.stories.tsx +0 -61
  54. package/src/Footer/Footer.tsx +0 -47
  55. package/src/Footer/index.tsx +0 -1
  56. package/src/IconButton/IconButton.tsx +0 -43
  57. package/src/IconButton/index.tsx +0 -1
  58. package/src/Icons/Icons.stories.mdx +0 -10
  59. package/src/Icons/IconsList.jsx +0 -17
  60. package/src/Input/Input.stories.tsx +0 -25
  61. package/src/Input/Input.tsx +0 -109
  62. package/src/Input/PasswordInput.stories.tsx +0 -53
  63. package/src/Input/index.tsx +0 -1
  64. package/src/Introduction/Integrating.stories.mdx +0 -100
  65. package/src/Introduction/Introduction.stories.mdx +0 -9
  66. package/src/Label/Label.tsx +0 -8
  67. package/src/Label/index.ts +0 -1
  68. package/src/Layout/Box.tsx +0 -3
  69. package/src/Layout/Flex.tsx +0 -76
  70. package/src/Layout/index.tsx +0 -2
  71. package/src/Link/Link.stories.tsx +0 -18
  72. package/src/Link/Link.tsx +0 -54
  73. package/src/Link/index.tsx +0 -2
  74. package/src/Loading/Loading.mdx +0 -15
  75. package/src/Loading/Loading.stories.tsx +0 -37
  76. package/src/Loading/Loading.tsx +0 -30
  77. package/src/Loading/index.ts +0 -1
  78. package/src/Modal/Dialog.mdx +0 -19
  79. package/src/Modal/Dialog.stories.tsx +0 -68
  80. package/src/Modal/Dialog.tsx +0 -57
  81. package/src/Modal/DialogContent.tsx +0 -65
  82. package/src/Modal/index.ts +0 -1
  83. package/src/Pagination/StyledPagination.stories.tsx +0 -80
  84. package/src/Pagination/StyledPagination.tsx +0 -70
  85. package/src/Pagination/index.tsx +0 -1
  86. package/src/Popover/Popover.mdx +0 -9
  87. package/src/Popover/Popover.stories.tsx +0 -95
  88. package/src/Popover/index.tsx +0 -34
  89. package/src/Prebuilt/App.tsx +0 -318
  90. package/src/Prebuilt/AppContext.tsx +0 -33
  91. package/src/Prebuilt/AppStateContext.tsx +0 -95
  92. package/src/Prebuilt/IconButton.tsx +0 -26
  93. package/src/Prebuilt/Prebuilt.stories.tsx +0 -46
  94. package/src/Prebuilt/common/PeersSorter.ts +0 -111
  95. package/src/Prebuilt/common/constants.ts +0 -151
  96. package/src/Prebuilt/common/hooks.ts +0 -257
  97. package/src/Prebuilt/common/utils.js +0 -185
  98. package/src/Prebuilt/components/AppData/AppData.tsx +0 -208
  99. package/src/Prebuilt/components/AppData/useChatState.js +0 -18
  100. package/src/Prebuilt/components/AppData/useSheet.ts +0 -33
  101. package/src/Prebuilt/components/AppData/useSidepane.js +0 -99
  102. package/src/Prebuilt/components/AppData/useSidepaneResetOnLayoutUpdate.tsx +0 -22
  103. package/src/Prebuilt/components/AppData/useUISettings.js +0 -212
  104. package/src/Prebuilt/components/AudioVideoToggle.tsx +0 -411
  105. package/src/Prebuilt/components/AuthToken.tsx +0 -148
  106. package/src/Prebuilt/components/CaptionIcon.tsx +0 -27
  107. package/src/Prebuilt/components/Chat/ArrowNavigation.tsx +0 -44
  108. package/src/Prebuilt/components/Chat/Chat.tsx +0 -190
  109. package/src/Prebuilt/components/Chat/ChatActions.tsx +0 -314
  110. package/src/Prebuilt/components/Chat/ChatBody.tsx +0 -493
  111. package/src/Prebuilt/components/Chat/ChatFooter.tsx +0 -316
  112. package/src/Prebuilt/components/Chat/ChatSelector.tsx +0 -228
  113. package/src/Prebuilt/components/Chat/ChatSelectorContainer.tsx +0 -158
  114. package/src/Prebuilt/components/Chat/ChatStates.tsx +0 -73
  115. package/src/Prebuilt/components/Chat/EmptyChat.tsx +0 -58
  116. package/src/Prebuilt/components/Chat/MwebChatOption.tsx +0 -24
  117. package/src/Prebuilt/components/Chat/PinnedMessage.tsx +0 -140
  118. package/src/Prebuilt/components/Chat/StickIndicator.tsx +0 -24
  119. package/src/Prebuilt/components/Chat/useEmojiPickerStyles.js +0 -32
  120. package/src/Prebuilt/components/Chat/useUnreadCount.ts +0 -19
  121. package/src/Prebuilt/components/Chat/utils.ts +0 -11
  122. package/src/Prebuilt/components/ChatSettings.tsx +0 -68
  123. package/src/Prebuilt/components/Chip.tsx +0 -40
  124. package/src/Prebuilt/components/ConferenceScreen.tsx +0 -205
  125. package/src/Prebuilt/components/Connection/ConnectionIndicator.tsx +0 -89
  126. package/src/Prebuilt/components/Connection/TileConnection.tsx +0 -93
  127. package/src/Prebuilt/components/Connection/connectionQualityUtils.js +0 -37
  128. package/src/Prebuilt/components/EmojiReaction.jsx +0 -100
  129. package/src/Prebuilt/components/EndCallFeedback/Feedback.tsx +0 -71
  130. package/src/Prebuilt/components/EndCallFeedback/FeedbackForm.tsx +0 -381
  131. package/src/Prebuilt/components/EndCallFeedback/ThankyouView.tsx +0 -64
  132. package/src/Prebuilt/components/ErrorBoundary.jsx +0 -102
  133. package/src/Prebuilt/components/Footer/ChatToggle.tsx +0 -53
  134. package/src/Prebuilt/components/Footer/EmojiCard.jsx +0 -34
  135. package/src/Prebuilt/components/Footer/Footer.tsx +0 -115
  136. package/src/Prebuilt/components/Footer/PaginatedParticipants.tsx +0 -124
  137. package/src/Prebuilt/components/Footer/ParticipantList.tsx +0 -478
  138. package/src/Prebuilt/components/Footer/PollsToggle.tsx +0 -37
  139. package/src/Prebuilt/components/Footer/RoleAccordion.tsx +0 -183
  140. package/src/Prebuilt/components/Footer/RoleOptions.tsx +0 -215
  141. package/src/Prebuilt/components/Footer/WhiteboardToggle.tsx +0 -52
  142. package/src/Prebuilt/components/FullPageProgress.tsx +0 -22
  143. package/src/Prebuilt/components/HMSVideo/Controls.jsx +0 -22
  144. package/src/Prebuilt/components/HMSVideo/FullscreenButton.tsx +0 -13
  145. package/src/Prebuilt/components/HMSVideo/HLSAutoplayBlockedPrompt.tsx +0 -72
  146. package/src/Prebuilt/components/HMSVideo/HLSCaptionSelector.tsx +0 -15
  147. package/src/Prebuilt/components/HMSVideo/HLSQualitySelector.tsx +0 -248
  148. package/src/Prebuilt/components/HMSVideo/HMSVideo.jsx +0 -75
  149. package/src/Prebuilt/components/HMSVideo/MwebHLSViewTitle.tsx +0 -86
  150. package/src/Prebuilt/components/HMSVideo/PlayPauseButton.tsx +0 -27
  151. package/src/Prebuilt/components/HMSVideo/PlayPauseSeekControls.tsx +0 -158
  152. package/src/Prebuilt/components/HMSVideo/PlayerContext.tsx +0 -15
  153. package/src/Prebuilt/components/HMSVideo/SeekControl.tsx +0 -22
  154. package/src/Prebuilt/components/HMSVideo/VideoProgress.tsx +0 -100
  155. package/src/Prebuilt/components/HMSVideo/VideoTime.tsx +0 -52
  156. package/src/Prebuilt/components/HMSVideo/VolumeControl.tsx +0 -70
  157. package/src/Prebuilt/components/HMSVideo/index.ts +0 -24
  158. package/src/Prebuilt/components/HMSVideo/utils.ts +0 -37
  159. package/src/Prebuilt/components/Header/Header.tsx +0 -52
  160. package/src/Prebuilt/components/Header/HeaderComponents.jsx +0 -57
  161. package/src/Prebuilt/components/Header/ParticipantFilter.jsx +0 -89
  162. package/src/Prebuilt/components/Header/RoomDetailsHeader.tsx +0 -51
  163. package/src/Prebuilt/components/Header/StreamActions.tsx +0 -297
  164. package/src/Prebuilt/components/Header/common.jsx +0 -196
  165. package/src/Prebuilt/components/Header/index.tsx +0 -1
  166. package/src/Prebuilt/components/HlsStatsOverlay.jsx +0 -89
  167. package/src/Prebuilt/components/IconButtonWithOptions/IconButtonWithOptions.stories.tsx +0 -40
  168. package/src/Prebuilt/components/IconButtonWithOptions/IconButtonWithOptions.tsx +0 -167
  169. package/src/Prebuilt/components/Input/KeyboardInputManager.js +0 -107
  170. package/src/Prebuilt/components/InsetTile.tsx +0 -136
  171. package/src/Prebuilt/components/LayoutModeSelector.tsx +0 -112
  172. package/src/Prebuilt/components/Leave/DesktopLeaveRoom.tsx +0 -166
  173. package/src/Prebuilt/components/Leave/EndSessionContent.tsx +0 -64
  174. package/src/Prebuilt/components/Leave/LeaveAtoms.tsx +0 -26
  175. package/src/Prebuilt/components/Leave/LeaveCard.tsx +0 -36
  176. package/src/Prebuilt/components/Leave/LeaveRoom.tsx +0 -82
  177. package/src/Prebuilt/components/Leave/LeaveSessionContent.tsx +0 -61
  178. package/src/Prebuilt/components/Leave/MwebLeaveRoom.tsx +0 -135
  179. package/src/Prebuilt/components/LeaveScreen.tsx +0 -71
  180. package/src/Prebuilt/components/MoreSettings/ActionTile.jsx +0 -60
  181. package/src/Prebuilt/components/MoreSettings/BulkRoleChangeModal.jsx +0 -139
  182. package/src/Prebuilt/components/MoreSettings/CaptionContent.tsx +0 -143
  183. package/src/Prebuilt/components/MoreSettings/CaptionModal.tsx +0 -37
  184. package/src/Prebuilt/components/MoreSettings/ChangeNameContent.tsx +0 -123
  185. package/src/Prebuilt/components/MoreSettings/ChangeNameModal.tsx +0 -78
  186. package/src/Prebuilt/components/MoreSettings/EmbedUrl.jsx +0 -81
  187. package/src/Prebuilt/components/MoreSettings/FullScreenItem.tsx +0 -26
  188. package/src/Prebuilt/components/MoreSettings/MoreSettings.tsx +0 -29
  189. package/src/Prebuilt/components/MoreSettings/MuteAllContent.tsx +0 -81
  190. package/src/Prebuilt/components/MoreSettings/MuteAllModal.tsx +0 -72
  191. package/src/Prebuilt/components/MoreSettings/SplitComponents/DesktopOptions.tsx +0 -282
  192. package/src/Prebuilt/components/MoreSettings/SplitComponents/MwebOptions.tsx +0 -387
  193. package/src/Prebuilt/components/MoreSettings/constants.ts +0 -14
  194. package/src/Prebuilt/components/MwebLandscapePrompt.tsx +0 -81
  195. package/src/Prebuilt/components/Notifications/AutoplayBlockedModal.tsx +0 -39
  196. package/src/Prebuilt/components/Notifications/ChatNotifications.tsx +0 -34
  197. package/src/Prebuilt/components/Notifications/DeviceChangeNotifications.tsx +0 -18
  198. package/src/Prebuilt/components/Notifications/DeviceInUseError.tsx +0 -86
  199. package/src/Prebuilt/components/Notifications/ErrorNotifications.tsx +0 -56
  200. package/src/Prebuilt/components/Notifications/HLSFailureModal.tsx +0 -71
  201. package/src/Prebuilt/components/Notifications/HandRaisedNotifications.tsx +0 -78
  202. package/src/Prebuilt/components/Notifications/InitErrorModal.tsx +0 -42
  203. package/src/Prebuilt/components/Notifications/MessageNotifications.tsx +0 -24
  204. package/src/Prebuilt/components/Notifications/Notifications.tsx +0 -65
  205. package/src/Prebuilt/components/Notifications/PeerNotifications.tsx +0 -52
  206. package/src/Prebuilt/components/Notifications/PermissionErrorModal.tsx +0 -144
  207. package/src/Prebuilt/components/Notifications/PollNotificationModal.tsx +0 -71
  208. package/src/Prebuilt/components/Notifications/ReconnectNotifications.tsx +0 -33
  209. package/src/Prebuilt/components/Notifications/RoleChangeNotification.tsx +0 -24
  210. package/src/Prebuilt/components/Notifications/TrackBulkUnmuteModal.tsx +0 -61
  211. package/src/Prebuilt/components/Notifications/TrackNotifications.tsx +0 -41
  212. package/src/Prebuilt/components/Notifications/TrackUnmuteModal.tsx +0 -63
  213. package/src/Prebuilt/components/Notifications/TranscriptionNotifications.tsx +0 -58
  214. package/src/Prebuilt/components/Notifications/index.tsx +0 -1
  215. package/src/Prebuilt/components/PIP/PIPChat.tsx +0 -292
  216. package/src/Prebuilt/components/PIP/PIPChatOption.tsx +0 -18
  217. package/src/Prebuilt/components/PIP/PIPComponent.tsx +0 -90
  218. package/src/Prebuilt/components/PIP/PIPManager.ts +0 -335
  219. package/src/Prebuilt/components/PIP/PIPProvider.tsx +0 -56
  220. package/src/Prebuilt/components/PIP/PIPWindow.tsx +0 -13
  221. package/src/Prebuilt/components/PIP/SetupMediaSession.js +0 -60
  222. package/src/Prebuilt/components/PIP/context.ts +0 -10
  223. package/src/Prebuilt/components/PIP/index.jsx +0 -6
  224. package/src/Prebuilt/components/PIP/pip.test.js +0 -72
  225. package/src/Prebuilt/components/PIP/pipUtils.js +0 -183
  226. package/src/Prebuilt/components/PIP/usePIPChat.tsx +0 -105
  227. package/src/Prebuilt/components/PIP/usePIPWindow.tsx +0 -12
  228. package/src/Prebuilt/components/Pagination.tsx +0 -60
  229. package/src/Prebuilt/components/Polls/CreatePollQuiz/PollsQuizMenu.tsx +0 -248
  230. package/src/Prebuilt/components/Polls/CreateQuestions/CreateQuestions.jsx +0 -142
  231. package/src/Prebuilt/components/Polls/CreateQuestions/DeleteQuestionModal.tsx +0 -74
  232. package/src/Prebuilt/components/Polls/CreateQuestions/QuestionForm.tsx +0 -324
  233. package/src/Prebuilt/components/Polls/CreateQuestions/SavedQuestion.tsx +0 -64
  234. package/src/Prebuilt/components/Polls/Polls.tsx +0 -31
  235. package/src/Prebuilt/components/Polls/Voting/LeaderboardEntry.tsx +0 -76
  236. package/src/Prebuilt/components/Polls/Voting/LeaderboardSummary.tsx +0 -116
  237. package/src/Prebuilt/components/Polls/Voting/PeerParticipationSummary.tsx +0 -60
  238. package/src/Prebuilt/components/Polls/Voting/QuestionCard.jsx +0 -221
  239. package/src/Prebuilt/components/Polls/Voting/StandardVoting.tsx +0 -47
  240. package/src/Prebuilt/components/Polls/Voting/StatisticBox.tsx +0 -20
  241. package/src/Prebuilt/components/Polls/Voting/TimedVoting.tsx +0 -55
  242. package/src/Prebuilt/components/Polls/Voting/Voting.tsx +0 -143
  243. package/src/Prebuilt/components/Polls/Voting/useQuizSummary.tsx +0 -50
  244. package/src/Prebuilt/components/Polls/common/Line.tsx +0 -4
  245. package/src/Prebuilt/components/Polls/common/MultipleChoiceOptions.jsx +0 -115
  246. package/src/Prebuilt/components/Polls/common/OptionInputWithDelete.tsx +0 -38
  247. package/src/Prebuilt/components/Polls/common/SingleChoiceOptions.jsx +0 -140
  248. package/src/Prebuilt/components/Polls/common/StatusIndicator.tsx +0 -35
  249. package/src/Prebuilt/components/Polls/common/VoteCount.tsx +0 -15
  250. package/src/Prebuilt/components/Polls/common/VoteProgress.tsx +0 -18
  251. package/src/Prebuilt/components/Polls/common/constants.ts +0 -5
  252. package/src/Prebuilt/components/Polls/common/utils.ts +0 -22
  253. package/src/Prebuilt/components/Preview/PreviewForm.tsx +0 -94
  254. package/src/Prebuilt/components/Preview/PreviewJoin.tsx +0 -292
  255. package/src/Prebuilt/components/Preview/PreviewScreen.tsx +0 -38
  256. package/src/Prebuilt/components/PreviousRoleInMetadata.tsx +0 -20
  257. package/src/Prebuilt/components/RaiseHand.tsx +0 -30
  258. package/src/Prebuilt/components/RemoveParticipant.tsx +0 -35
  259. package/src/Prebuilt/components/RoleChangeModal.tsx +0 -188
  260. package/src/Prebuilt/components/RoleChangeRequest/RequestPrompt.tsx +0 -75
  261. package/src/Prebuilt/components/RoleChangeRequest/RoleChangeRequestModal.tsx +0 -94
  262. package/src/Prebuilt/components/RoomDetails/Duration.tsx +0 -26
  263. package/src/Prebuilt/components/RoomDetails/RoomDetailsPane.tsx +0 -63
  264. package/src/Prebuilt/components/RoomDetails/RoomDetailsRow.tsx +0 -23
  265. package/src/Prebuilt/components/RoomDetails/RoomDetailsSheet.tsx +0 -45
  266. package/src/Prebuilt/components/ScreenShareToggle.jsx +0 -58
  267. package/src/Prebuilt/components/ScreenshareDisplay.tsx +0 -39
  268. package/src/Prebuilt/components/ScreenshareTile.tsx +0 -134
  269. package/src/Prebuilt/components/SecondaryTiles.tsx +0 -81
  270. package/src/Prebuilt/components/Settings/DeviceSettings.jsx +0 -208
  271. package/src/Prebuilt/components/Settings/LayoutSettings.tsx +0 -74
  272. package/src/Prebuilt/components/Settings/NotificationSettings.tsx +0 -66
  273. package/src/Prebuilt/components/Settings/SettingsModal.jsx +0 -301
  274. package/src/Prebuilt/components/Settings/StartRecording.jsx +0 -101
  275. package/src/Prebuilt/components/Settings/SwitchWithLabel.tsx +0 -53
  276. package/src/Prebuilt/components/Settings/common.ts +0 -16
  277. package/src/Prebuilt/components/ShareMenuIcon.jsx +0 -27
  278. package/src/Prebuilt/components/SidePaneTabs.tsx +0 -214
  279. package/src/Prebuilt/components/StatsForNerds.jsx +0 -373
  280. package/src/Prebuilt/components/Streaming/Common.jsx +0 -143
  281. package/src/Prebuilt/components/Streaming/ResolutionInput.jsx +0 -88
  282. package/src/Prebuilt/components/TileMenu/TileMenu.tsx +0 -148
  283. package/src/Prebuilt/components/TileMenu/TileMenuContent.tsx +0 -393
  284. package/src/Prebuilt/components/TileMenu/utils.ts +0 -7
  285. package/src/Prebuilt/components/Toast/Toast.jsx +0 -17
  286. package/src/Prebuilt/components/Toast/ToastBatcher.js +0 -64
  287. package/src/Prebuilt/components/Toast/ToastConfig.jsx +0 -177
  288. package/src/Prebuilt/components/Toast/ToastContainer.jsx +0 -30
  289. package/src/Prebuilt/components/Toast/ToastManager.js +0 -44
  290. package/src/Prebuilt/components/VideoLayouts/EqualProminence.tsx +0 -62
  291. package/src/Prebuilt/components/VideoLayouts/Grid.tsx +0 -43
  292. package/src/Prebuilt/components/VideoLayouts/GridLayout.tsx +0 -155
  293. package/src/Prebuilt/components/VideoLayouts/ProminenceLayout.tsx +0 -91
  294. package/src/Prebuilt/components/VideoLayouts/RoleProminence.tsx +0 -66
  295. package/src/Prebuilt/components/VideoLayouts/ScreenshareLayout.tsx +0 -74
  296. package/src/Prebuilt/components/VideoLayouts/WhiteboardLayout.tsx +0 -93
  297. package/src/Prebuilt/components/VideoLayouts/interface.ts +0 -11
  298. package/src/Prebuilt/components/VideoTile.tsx +0 -203
  299. package/src/Prebuilt/components/VirtualBackground/VBCollection.tsx +0 -52
  300. package/src/Prebuilt/components/VirtualBackground/VBHandler.tsx +0 -130
  301. package/src/Prebuilt/components/VirtualBackground/VBOption.tsx +0 -57
  302. package/src/Prebuilt/components/VirtualBackground/VBPicker.tsx +0 -252
  303. package/src/Prebuilt/components/VirtualBackground/VBToggle.tsx +0 -50
  304. package/src/Prebuilt/components/hooks/useAudioOutputTest.tsx +0 -20
  305. package/src/Prebuilt/components/hooks/useAutoStartStreaming.tsx +0 -70
  306. package/src/Prebuilt/components/hooks/useChatBlacklist.ts +0 -29
  307. package/src/Prebuilt/components/hooks/useCloseScreenshareWhiteboard.tsx +0 -17
  308. package/src/Prebuilt/components/hooks/useDropdownList.ts +0 -24
  309. package/src/Prebuilt/components/hooks/useDropdownSelection.jsx +0 -3
  310. package/src/Prebuilt/components/hooks/useFullscreen.ts +0 -46
  311. package/src/Prebuilt/components/hooks/useGroupOnStageActions.tsx +0 -54
  312. package/src/Prebuilt/components/hooks/useMetadata.tsx +0 -56
  313. package/src/Prebuilt/components/hooks/usePeerOnStageActions.tsx +0 -49
  314. package/src/Prebuilt/components/hooks/usePinnedBy.tsx +0 -22
  315. package/src/Prebuilt/components/hooks/usePinnedMessages.ts +0 -78
  316. package/src/Prebuilt/components/hooks/usePlaylist.js +0 -25
  317. package/src/Prebuilt/components/hooks/usePlaylistMusic.js +0 -35
  318. package/src/Prebuilt/components/hooks/useRedirectToLeave.tsx +0 -23
  319. package/src/Prebuilt/components/hooks/useRoleProminencePeers.tsx +0 -39
  320. package/src/Prebuilt/components/hooks/useScreenshareAudio.js +0 -28
  321. package/src/Prebuilt/components/hooks/useTileLayout.tsx +0 -128
  322. package/src/Prebuilt/components/hooks/useUnreadPollQuizPresent.tsx +0 -17
  323. package/src/Prebuilt/components/hooks/useUserPreferences.jsx +0 -26
  324. package/src/Prebuilt/components/hooks/useVideoTileLayout.ts +0 -26
  325. package/src/Prebuilt/components/init/Init.jsx +0 -31
  326. package/src/Prebuilt/components/pdfAnnotator/pdfFileOptions.jsx +0 -42
  327. package/src/Prebuilt/components/pdfAnnotator/pdfHeader.jsx +0 -31
  328. package/src/Prebuilt/components/pdfAnnotator/pdfInfo.jsx +0 -32
  329. package/src/Prebuilt/components/pdfAnnotator/shareScreenOptions.jsx +0 -211
  330. package/src/Prebuilt/components/pdfAnnotator/submitPdf.jsx +0 -48
  331. package/src/Prebuilt/components/pdfAnnotator/uploadedFile.jsx +0 -71
  332. package/src/Prebuilt/components/peerTileUtils.tsx +0 -42
  333. package/src/Prebuilt/images/android-perm-1.png +0 -0
  334. package/src/Prebuilt/images/empty-chat.svg +0 -12
  335. package/src/Prebuilt/images/ios-perm-0.png +0 -0
  336. package/src/Prebuilt/images/pdf-share.png +0 -0
  337. package/src/Prebuilt/images/rtmp.png +0 -0
  338. package/src/Prebuilt/images/screen-share.png +0 -0
  339. package/src/Prebuilt/images/transaction_error.svg +0 -12
  340. package/src/Prebuilt/index.ts +0 -1
  341. package/src/Prebuilt/layouts/EmbedView.jsx +0 -94
  342. package/src/Prebuilt/layouts/HLSView.jsx +0 -747
  343. package/src/Prebuilt/layouts/PDFView.jsx +0 -67
  344. package/src/Prebuilt/layouts/Sheet.tsx +0 -14
  345. package/src/Prebuilt/layouts/SidePane.tsx +0 -241
  346. package/src/Prebuilt/layouts/VideoStreamingSection.tsx +0 -164
  347. package/src/Prebuilt/layouts/WaitingView.tsx +0 -52
  348. package/src/Prebuilt/plugins/CaptionsViewer.tsx +0 -261
  349. package/src/Prebuilt/plugins/FlyingEmoji.jsx +0 -154
  350. package/src/Prebuilt/plugins/RemoteStopScreenshare.jsx +0 -18
  351. package/src/Prebuilt/plugins/transcription/Transcriber.js +0 -216
  352. package/src/Prebuilt/plugins/transcription/TranscriptionButton.jsx +0 -138
  353. package/src/Prebuilt/plugins/transcription/index.jsx +0 -1
  354. package/src/Prebuilt/primitives/DialogContent.jsx +0 -285
  355. package/src/Prebuilt/primitives/DropdownTrigger.jsx +0 -46
  356. package/src/Prebuilt/provider/roomLayoutProvider/constants/index.ts +0 -60
  357. package/src/Prebuilt/provider/roomLayoutProvider/hooks/useFetchRoomLayout.ts +0 -88
  358. package/src/Prebuilt/provider/roomLayoutProvider/hooks/useInsetEnabled.ts +0 -10
  359. package/src/Prebuilt/provider/roomLayoutProvider/hooks/useRoomLayoutScreen.ts +0 -112
  360. package/src/Prebuilt/provider/roomLayoutProvider/index.tsx +0 -53
  361. package/src/Prebuilt/services/FeatureFlags.jsx +0 -46
  362. package/src/Progress/index.tsx +0 -17
  363. package/src/QRCode/QRCode.mdx +0 -9
  364. package/src/QRCode/QRCode.stories.tsx +0 -29
  365. package/src/QRCode/QRCode.tsx +0 -6
  366. package/src/QRCode/index.tsx +0 -1
  367. package/src/RadioGroup/RadioGroup.stories.tsx +0 -32
  368. package/src/RadioGroup/RadioGroup.tsx +0 -33
  369. package/src/RadioGroup/index.tsx +0 -1
  370. package/src/ReactSelect/ReactSelect.stories.tsx +0 -83
  371. package/src/ReactSelect/ReactSelect.tsx +0 -97
  372. package/src/ReactSelect/index.ts +0 -1
  373. package/src/Select/Select.stories.tsx +0 -33
  374. package/src/Select/Select.tsx +0 -63
  375. package/src/Select/index.ts +0 -1
  376. package/src/Sheet/Sheet.mdx +0 -19
  377. package/src/Sheet/Sheet.stories.tsx +0 -103
  378. package/src/Sheet/Sheet.tsx +0 -122
  379. package/src/Sheet/index.ts +0 -1
  380. package/src/Slider/Slider.stories.tsx +0 -21
  381. package/src/Slider/Slider.tsx +0 -70
  382. package/src/Slider/index.ts +0 -1
  383. package/src/Stats/Stats.tsx +0 -243
  384. package/src/Stats/StyledStats.tsx +0 -57
  385. package/src/Stats/formatBytes.ts +0 -19
  386. package/src/Stats/index.tsx +0 -2
  387. package/src/Stats/useQoE.ts +0 -79
  388. package/src/Switch/Switch.mdx +0 -11
  389. package/src/Switch/Switch.stories.tsx +0 -46
  390. package/src/Switch/Switch.tsx +0 -52
  391. package/src/Switch/index.ts +0 -1
  392. package/src/Tabs/Tabs.stories.tsx +0 -77
  393. package/src/Tabs/Tabs.tsx +0 -41
  394. package/src/Tabs/index.tsx +0 -1
  395. package/src/Text/Text.stories.tsx +0 -21
  396. package/src/Text/Text.tsx +0 -149
  397. package/src/Text/index.tsx +0 -1
  398. package/src/TextArea/TextArea.tsx +0 -30
  399. package/src/TextArea/index.tsx +0 -1
  400. package/src/Theme/Theme.stories.mdx +0 -8
  401. package/src/Theme/ThemeProvider.tsx +0 -98
  402. package/src/Theme/ThemeStory.jsx +0 -56
  403. package/src/Theme/base.config.ts +0 -236
  404. package/src/Theme/index.tsx +0 -2
  405. package/src/Theme/stitches.config.ts +0 -88
  406. package/src/Theme/useSSR.tsx +0 -24
  407. package/src/TileMenu/StyledMenuTile.tsx +0 -105
  408. package/src/TileMenu/TileMenu.tsx +0 -98
  409. package/src/TileMenu/index.tsx +0 -1
  410. package/src/Toast/AppToast.stories.tsx +0 -56
  411. package/src/Toast/Toast.mdx +0 -19
  412. package/src/Toast/Toast.stories.tsx +0 -57
  413. package/src/Toast/Toast.tsx +0 -170
  414. package/src/Toast/index.tsx +0 -1
  415. package/src/Tooltip/Tooltip.stories.tsx +0 -62
  416. package/src/Tooltip/Tooltip.tsx +0 -79
  417. package/src/Tooltip/index.ts +0 -1
  418. package/src/Video/UseVideo.mdx +0 -22
  419. package/src/Video/UseVideo.stories.tsx +0 -26
  420. package/src/Video/Video.mdx +0 -24
  421. package/src/Video/Video.stories.tsx +0 -27
  422. package/src/Video/Video.tsx +0 -61
  423. package/src/Video/index.tsx +0 -1
  424. package/src/VideoList/StyledVideoList.tsx +0 -39
  425. package/src/VideoList/VideoList.stories.tsx +0 -92
  426. package/src/VideoList/index.tsx +0 -2
  427. package/src/VideoList/videoListUtils.tsx +0 -20
  428. package/src/VideoTile/StyledVideoTile.tsx +0 -146
  429. package/src/VideoTile/VideoTile.mdx +0 -28
  430. package/src/VideoTile/VideoTile.stories.tsx +0 -32
  431. package/src/VideoTile/index.tsx +0 -1
  432. package/src/context/DialogContext.tsx +0 -13
  433. package/src/fixtures/chats.ts +0 -25
  434. package/src/fixtures/peers.ts +0 -27
  435. package/src/fixtures/tracks.ts +0 -11
  436. package/src/hooks/useDialogContainerSelector.tsx +0 -7
  437. package/src/index.ts +0 -41
  438. package/src/store/SetupFakeStore.ts +0 -33
  439. package/src/store/StorybookSDK.ts +0 -231
  440. package/src/utils/animations.ts +0 -114
  441. package/src/utils/index.ts +0 -2
  442. package/src/utils/styles.ts +0 -22
@@ -1,81 +0,0 @@
1
- import React, { useEffect, useState } from 'react';
2
- import { useMedia } from 'react-use';
3
- import { match, P } from 'ts-pattern';
4
- import { RefreshIcon } from '@100mslive/react-icons';
5
- import { Button } from '../../Button';
6
- import { Box, Flex } from '../../Layout';
7
- import { Dialog } from '../../Modal';
8
- import { Text } from '../../Text';
9
- import { config as cssConfig } from '../../Theme';
10
- import { useLandscapeHLSStream } from '../common/hooks';
11
- // @ts-ignore
12
- import { isMobileUserAgent } from '../common/utils';
13
-
14
- export const MwebLandscapePrompt = () => {
15
- const [showMwebLandscapePrompt, setShowMwebLandscapePrompt] = useState(false);
16
- const isLandscape = useMedia(cssConfig.media.ls);
17
- const isLandscapeHLSStream = useLandscapeHLSStream();
18
-
19
- useEffect(() => {
20
- if (!isMobileUserAgent) {
21
- setShowMwebLandscapePrompt(false);
22
- return;
23
- }
24
-
25
- if (!window.screen?.orientation) {
26
- setShowMwebLandscapePrompt(isLandscape && !isLandscapeHLSStream);
27
- return;
28
- }
29
- const handleRotation = () => {
30
- const angle = window.screen.orientation.angle;
31
- const type = window.screen.orientation.type || '';
32
- // Angle check needed to diff bw mobile and desktop
33
- setShowMwebLandscapePrompt(
34
- match({ angle, isLandscapeHLSStream, isLandscape, type })
35
- .with({ isLandscapeHLSStream: true }, () => false)
36
- .with({ angle: P.when(angle => angle && angle >= 90) }, ({ type }) => type.includes('landscape'))
37
- .otherwise(() => isLandscape),
38
- );
39
- };
40
- handleRotation();
41
- window.screen.orientation.addEventListener('change', handleRotation);
42
- return () => {
43
- window.screen.orientation.removeEventListener('change', handleRotation);
44
- };
45
- }, [isLandscape, isLandscapeHLSStream]);
46
-
47
- if (isLandscapeHLSStream) {
48
- return null;
49
- }
50
- return (
51
- <Dialog.Root open={showMwebLandscapePrompt} onOpenChange={setShowMwebLandscapePrompt}>
52
- <Dialog.Portal>
53
- <Dialog.Overlay />
54
- <Dialog.Content css={{ w: 'min(420px, 90%)', p: '$8', bg: '$surface_dim' }}>
55
- <Box>
56
- <Flex
57
- css={{
58
- color: '$primary_default',
59
- display: 'flex',
60
- alignItems: 'center',
61
- }}
62
- >
63
- <RefreshIcon style={{ marginRight: '0.5rem' }} />
64
- <Text variant="lg" css={{ color: '$on_surface_high', fontWeight: '$semiBold' }}>
65
- Please rotate your device
66
- </Text>
67
- </Flex>
68
- <Text variant="sm" css={{ color: '$on_surface_medium', mb: '$8', mt: '$4' }}>
69
- We do not support landscape mode as of now, please use the app in portrait mode for the best experience.
70
- </Text>
71
- <Flex align="center" justify="between" css={{ w: '100%', gap: '$8' }}>
72
- <Button outlined variant="standard" css={{ w: '100%' }} onClick={() => setShowMwebLandscapePrompt(false)}>
73
- Continue anyway
74
- </Button>
75
- </Flex>
76
- </Box>
77
- </Dialog.Content>
78
- </Dialog.Portal>
79
- </Dialog.Root>
80
- );
81
- };
@@ -1,39 +0,0 @@
1
- import React from 'react';
2
- import { useAutoplayError } from '@100mslive/react-sdk';
3
- import { Button, Dialog, Text } from '../../..';
4
- // @ts-ignore: No implicit Any
5
- import { DialogContent, DialogRow } from '../../primitives/DialogContent';
6
-
7
- export function AutoplayBlockedModal() {
8
- const { error, resetError, unblockAudio } = useAutoplayError();
9
- return (
10
- <Dialog.Root
11
- open={!!error}
12
- onOpenChange={async value => {
13
- if (!value) {
14
- await unblockAudio();
15
- }
16
- resetError();
17
- }}
18
- >
19
- <DialogContent title="Permission Error" closeable={false}>
20
- <DialogRow>
21
- <Text variant="md">
22
- The browser wants us to get a confirmation for playing the Audio. Please allow audio to proceed.
23
- </Text>
24
- </DialogRow>
25
- <DialogRow justify="end">
26
- <Button
27
- variant="primary"
28
- onClick={async () => {
29
- await unblockAudio();
30
- resetError();
31
- }}
32
- >
33
- Allow Audio
34
- </Button>
35
- </DialogRow>
36
- </DialogContent>
37
- </Dialog.Root>
38
- );
39
- }
@@ -1,34 +0,0 @@
1
- import React, { useEffect } from 'react';
2
- import { v4 as uuid } from 'uuid';
3
- import { selectLocalPeerID, selectSessionStore, useHMSStore } from '@100mslive/react-sdk';
4
- import { ChatIcon, ChatUnreadIcon } from '@100mslive/react-icons';
5
- // @ts-ignore
6
- import { ToastManager } from '../Toast/ToastManager';
7
- import { SESSION_STORE_KEY } from '../../common/constants';
8
-
9
- const NOTIFICATION_TIME_DIFFERENCE = 5000;
10
-
11
- export const ChatNotifications = () => {
12
- const chatState = useHMSStore(selectSessionStore(SESSION_STORE_KEY.CHAT_STATE));
13
- const localPeerId = useHMSStore(selectLocalPeerID);
14
-
15
- useEffect(() => {
16
- if (!chatState || chatState.updatedBy?.peerId === localPeerId) {
17
- return;
18
- }
19
-
20
- const showToast = Date.now() - chatState.updatedAt < NOTIFICATION_TIME_DIFFERENCE;
21
-
22
- if (!showToast) {
23
- return;
24
- }
25
-
26
- const notification = {
27
- id: uuid(),
28
- icon: chatState.enabled ? <ChatUnreadIcon /> : <ChatIcon />,
29
- title: `Chat ${chatState.enabled ? 'resumed' : 'paused'} by ${chatState.updatedBy?.userName}`,
30
- };
31
- ToastManager.addToast(notification);
32
- }, [chatState, localPeerId]);
33
- return <></>;
34
- };
@@ -1,18 +0,0 @@
1
- import { useEffect } from 'react';
2
- import { HMSNotificationTypes, useHMSNotifications } from '@100mslive/react-sdk';
3
- // @ts-ignore: No implicit Any
4
- import { ToastManager } from '../Toast/ToastManager';
5
-
6
- export const DeviceChangeNotifications = () => {
7
- const notification = useHMSNotifications(HMSNotificationTypes.DEVICE_CHANGE_UPDATE);
8
-
9
- useEffect(() => {
10
- if (notification) {
11
- ToastManager.addToast({
12
- title: notification.message,
13
- });
14
- }
15
- }, [notification]);
16
-
17
- return null;
18
- };
@@ -1,86 +0,0 @@
1
- import React, { useEffect, useState } from 'react';
2
- import {
3
- HMSNotificationTypes,
4
- HMSTrackException,
5
- HMSTrackExceptionTrackType,
6
- useHMSNotifications,
7
- } from '@100mslive/react-sdk';
8
- import { Button, Dialog, Text } from '../../..';
9
- // @ts-ignore: No implicit Any
10
- import { DialogContent, DialogRow } from '../../primitives/DialogContent';
11
- // @ts-ignore: No implicit Any
12
- import { ToastManager } from '../Toast/ToastManager';
13
-
14
- const Instruction = ({ description }: { description: string }) => (
15
- <li>
16
- <DialogRow css={{ ml: '$4' }}>
17
- <Text variant="body2">{description}</Text>
18
- </DialogRow>
19
- </li>
20
- );
21
-
22
- export function DeviceInUseError() {
23
- const notification = useHMSNotifications(HMSNotificationTypes.ERROR);
24
- const [showDeviceInUseModal, setShowDeviceInUseModal] = useState(false);
25
- const [deviceType, setDeviceType] = useState('');
26
-
27
- useEffect(() => {
28
- const error = notification?.data;
29
- if (!error || error.code !== 3003) {
30
- return;
31
- }
32
- const errorTrackExceptionType = (error as HMSTrackException)?.trackType;
33
- const hasAudio = errorTrackExceptionType === HMSTrackExceptionTrackType.AUDIO;
34
- const hasVideo = errorTrackExceptionType === HMSTrackExceptionTrackType.VIDEO;
35
- const hasAudioVideo = errorTrackExceptionType === HMSTrackExceptionTrackType.AUDIO_VIDEO;
36
- const hasScreen = errorTrackExceptionType === HMSTrackExceptionTrackType.SCREEN;
37
-
38
- const errorMessage = error?.message;
39
- ToastManager.addToast({
40
- title: `Error: ${errorMessage} - ${error?.description}`,
41
- action: (
42
- <Button outlined variant="standard" css={{ w: 'max-content' }} onClick={() => setShowDeviceInUseModal(true)}>
43
- Help
44
- </Button>
45
- ),
46
- });
47
-
48
- if (hasAudioVideo) {
49
- setDeviceType('camera and microphone');
50
- } else if (hasAudio) {
51
- setDeviceType('microphone');
52
- } else if (hasVideo) {
53
- setDeviceType('camera');
54
- } else if (hasScreen) {
55
- setDeviceType('screen');
56
- }
57
- }, [notification]);
58
-
59
- return (
60
- <Dialog.Root
61
- open={showDeviceInUseModal}
62
- onOpenChange={() => {
63
- setShowDeviceInUseModal(false);
64
- }}
65
- >
66
- <DialogContent title="Device Access Error">
67
- <DialogRow>
68
- <Text variant="body2">
69
- We weren't able to access your {deviceType} since it's either in use by another application or is not
70
- configured properly. Please follow the following instructions to resolve this issue.
71
- </Text>
72
- </DialogRow>
73
- <ol>
74
- <Instruction
75
- description={`Please check if the ${deviceType} device(s) are in use by another browser or application and close it.`}
76
- />
77
- <Instruction
78
- description={`Go to Browser Settings > Privacy and security > Site settings > ${deviceType} and check if your preferred device is selected as default.`}
79
- />
80
- <Instruction description="Try restarting the browser." />
81
- <Instruction description="Try disconnecting and reconnecting the external device if your intention is to use one." />
82
- </ol>
83
- </DialogContent>
84
- </Dialog.Root>
85
- );
86
- }
@@ -1,56 +0,0 @@
1
- import React, { useEffect } from 'react';
2
- import { HMSNotificationTypes, useHMSNotifications } from '@100mslive/react-sdk';
3
- import { GroupIcon } from '@100mslive/react-icons';
4
- import { Box } from '../../../Layout';
5
- // @ts-ignore: No implicit Any
6
- import { ToastManager } from '../Toast/ToastManager';
7
- // @ts-ignore: No implicit Any
8
- import { useSubscribedNotifications } from '../AppData/useUISettings';
9
-
10
- export const ErrorNotifications = () => {
11
- const notification = useHMSNotifications(HMSNotificationTypes.ERROR);
12
- const subscribedNotifications = useSubscribedNotifications() || {};
13
-
14
- useEffect(() => {
15
- if (!notification || !notification.data) return;
16
-
17
- const { isTerminal, action, code, message, description } = notification.data;
18
-
19
- if (isTerminal && action !== 'INIT') {
20
- if ([500, 6008].includes(code)) {
21
- ToastManager.addToast({
22
- title: `Error: ${message}`,
23
- });
24
- } else if (message === 'role limit reached') {
25
- ToastManager.addToast({
26
- title: 'The room is currently full, try joining later',
27
- close: true,
28
- icon: (
29
- <Box css={{ color: '$alert_error_default' }}>
30
- <GroupIcon />
31
- </Box>
32
- ),
33
- });
34
- } else {
35
- ToastManager.addToast({
36
- title: message || 'We couldn’t reconnect you. When you’re back online, try joining the room.',
37
- close: false,
38
- });
39
- }
40
- return;
41
- }
42
- // Autoplay error or user denied screen share (cancelled browser pop-up)
43
- if ([3008, 3001, 3011].includes(code)) {
44
- return;
45
- }
46
- if (action === 'INIT') {
47
- return;
48
- }
49
- if (!subscribedNotifications.ERROR) return;
50
- ToastManager.addToast({
51
- title: `Error: ${message} - ${description}`,
52
- });
53
- }, [notification, subscribedNotifications.ERROR]);
54
-
55
- return null;
56
- };
@@ -1,71 +0,0 @@
1
- import React, { useCallback, useState } from 'react';
2
- import { selectHLSState, useHMSActions, useHMSStore, useRecordingStreaming } from '@100mslive/react-sdk';
3
- import { Button } from '../../../Button';
4
- import { Flex } from '../../../Layout';
5
- import { Dialog } from '../../../Modal';
6
- import { Text } from '../../../Text';
7
- // @ts-ignore: No implicit Any
8
- import { useSetAppDataByKey } from '../AppData/useUISettings';
9
- // @ts-ignore: No implicit Any
10
- import { APP_DATA } from '../../common/constants';
11
-
12
- export function HLSFailureModal() {
13
- const hlsError = useHMSStore(selectHLSState).error || false;
14
- const [openModal, setOpenModal] = useState(!!hlsError);
15
- const hmsActions = useHMSActions();
16
- const { isRTMPRunning } = useRecordingStreaming();
17
- const [isHLSStarted, setHLSStarted] = useSetAppDataByKey(APP_DATA.hlsStarted);
18
- const startHLS = useCallback(async () => {
19
- try {
20
- if (isHLSStarted || isRTMPRunning) {
21
- return;
22
- }
23
- setHLSStarted(true);
24
- await hmsActions.startHLSStreaming({});
25
- } catch (error) {
26
- console.error(error);
27
- setHLSStarted(false);
28
- }
29
- }, [hmsActions, isHLSStarted, setHLSStarted, isRTMPRunning]);
30
-
31
- return hlsError ? (
32
- <Dialog.Root
33
- open={openModal}
34
- onOpenChange={value => {
35
- if (!value) {
36
- setOpenModal(false);
37
- }
38
- }}
39
- >
40
- <Dialog.Portal>
41
- <Dialog.Overlay />
42
- <Dialog.Content css={{ w: 'min(360px, 90%)' }}>
43
- <Dialog.Title
44
- css={{
45
- display: 'flex',
46
- alignItems: 'center',
47
- justifyContent: 'space-between',
48
- borderBottom: '1px solid $border_default',
49
- mt: '$4',
50
- }}
51
- >
52
- <Text variant="h6" css={{ fontWeight: '$semiBold' }}>
53
- Failed to Go Live
54
- </Text>
55
- </Dialog.Title>
56
- <Text variant="sm" css={{ mb: '$10', color: '$on_surface_medium' }}>
57
- Something went wrong and your live broadcast failed. Please try again.
58
- </Text>
59
- <Flex align="center" justify="between" css={{ w: '100%', gap: '$8' }}>
60
- <Button outlined variant="standard" css={{ w: '100%' }} onClick={() => setOpenModal(false)}>
61
- Dismiss
62
- </Button>
63
- <Button css={{ w: '100%' }} onClick={startHLS}>
64
- Go Live
65
- </Button>
66
- </Flex>
67
- </Dialog.Content>
68
- </Dialog.Portal>
69
- </Dialog.Root>
70
- ) : null;
71
- }
@@ -1,78 +0,0 @@
1
- import { useEffect } from 'react';
2
- import { useDebounce } from 'react-use';
3
- import {
4
- HMSNotificationTypes,
5
- HMSRoomState,
6
- selectHandRaisedPeers,
7
- selectHasPeerHandRaised,
8
- selectIsLocalScreenShared,
9
- selectPeerByID,
10
- selectRoomState,
11
- useAwayNotifications,
12
- useHMSNotifications,
13
- useHMSStore,
14
- useHMSVanillaStore,
15
- } from '@100mslive/react-sdk';
16
- import { useRoomLayout } from '../../provider/roomLayoutProvider';
17
- // @ts-ignore: No implicit Any
18
- import { ToastBatcher } from '../Toast/ToastBatcher';
19
- import { useRoomLayoutConferencingScreen } from '../../provider/roomLayoutProvider/hooks/useRoomLayoutScreen';
20
- // @ts-ignore: No implicit Any
21
- import { useSubscribedNotifications } from '../AppData/useUISettings';
22
- import { SUBSCRIBED_NOTIFICATIONS } from '../../common/constants';
23
-
24
- export const HandRaisedNotifications = () => {
25
- const notification = useHMSNotifications(HMSNotificationTypes.HAND_RAISE_CHANGED);
26
- const roomState = useHMSStore(selectRoomState);
27
- const vanillaStore = useHMSVanillaStore();
28
- const { on_stage_exp } = useRoomLayoutConferencingScreen().elements || {};
29
- const isSubscribing = !!useSubscribedNotifications(SUBSCRIBED_NOTIFICATIONS.METADATA_UPDATED);
30
- const amIScreenSharing = useHMSStore(selectIsLocalScreenShared);
31
- const { showNotification } = useAwayNotifications();
32
- const logoURL = useRoomLayout()?.logo?.url;
33
-
34
- useEffect(() => {
35
- if (!notification?.data) {
36
- return;
37
- }
38
-
39
- // Don't show toast message in case of local peer.
40
- if (roomState !== HMSRoomState.Connected || notification.data.isLocal || !isSubscribing) {
41
- return;
42
- }
43
-
44
- const hasPeerHandRaised = vanillaStore.getState(selectHasPeerHandRaised(notification.data.id));
45
- const peer = vanillaStore.getState(selectPeerByID(notification.data.id));
46
- if (hasPeerHandRaised) {
47
- const showCTA = peer?.roleName && (on_stage_exp?.off_stage_roles || [])?.includes(peer.roleName);
48
- ToastBatcher.showToast({ notification, type: showCTA ? 'RAISE_HAND_HLS' : 'RAISE_HAND' });
49
- console.debug('Metadata updated', notification.data);
50
- }
51
- }, [isSubscribing, notification, on_stage_exp, roomState, vanillaStore]);
52
-
53
- useDebounce(
54
- () => {
55
- if (!notification?.data) {
56
- return;
57
- }
58
-
59
- // Don't show toast message in case of local peer.
60
- if (roomState !== HMSRoomState.Connected || notification.data.isLocal || !isSubscribing) {
61
- return;
62
- }
63
-
64
- const hasPeerHandRaised = vanillaStore.getState(selectHasPeerHandRaised(notification.data.id));
65
- const peer = vanillaStore.getState(selectPeerByID(notification.data.id));
66
- const handRaisedPeers = vanillaStore.getState(selectHandRaisedPeers);
67
- if (amIScreenSharing && hasPeerHandRaised) {
68
- const title = `${peer?.name} ${
69
- handRaisedPeers.length > 1 ? `and ${handRaisedPeers.length - 1} others` : ''
70
- } raised hand`;
71
- showNotification(title, { icon: logoURL });
72
- }
73
- },
74
- 1000,
75
- [isSubscribing, notification, roomState, vanillaStore, amIScreenSharing],
76
- );
77
- return null;
78
- };
@@ -1,42 +0,0 @@
1
- import React, { useEffect, useState } from 'react';
2
- import { HMSNotificationTypes, useHMSNotifications } from '@100mslive/react-sdk';
3
- import { Text } from '../../..';
4
- // @ts-ignore: No implicit Any
5
- import { ErrorDialog } from '../../primitives/DialogContent';
6
-
7
- export const InitErrorModal = () => {
8
- const notification = useHMSNotifications(HMSNotificationTypes.ERROR);
9
- const [showModal, setShowModal] = useState(false);
10
- const [info, setInfo] = useState({ title: 'Init Error', description: '' });
11
-
12
- useEffect(() => {
13
- const data = notification?.data;
14
- if (!data || data.action !== 'INIT') {
15
- return;
16
- }
17
- let description;
18
- let title;
19
- if (data.description.includes('role is invalid')) {
20
- description = 'This role does not exist for the given room. Try again with a valid role.';
21
- title = 'Invalid Role';
22
- } else if (data.description.includes('room is not active')) {
23
- title = 'Room is disabled';
24
- description =
25
- 'This room is disabled and cannot be joined. To enable the room, use the 100ms dashboard or the API.';
26
- } else {
27
- description = data.description;
28
- title = 'Init Error';
29
- }
30
- setInfo({ title, description });
31
- setShowModal(true);
32
- }, [notification]);
33
-
34
- return (
35
- <ErrorDialog open={showModal} onOpenChange={setShowModal} title={info.title}>
36
- <Text variant="sm" css={{ wordBreak: 'break-word' }}>
37
- {info.description} <br />
38
- Current URL - {window.location.href}
39
- </Text>
40
- </ErrorDialog>
41
- );
42
- };
@@ -1,24 +0,0 @@
1
- import { useEffect } from 'react';
2
- import { HMSNotificationTypes, selectIsLocalScreenShared } from '@100mslive/hms-video-store';
3
- import { useAwayNotifications, useHMSNotifications, useHMSStore } from '@100mslive/react-sdk';
4
- import { useRoomLayout } from '../../provider/roomLayoutProvider';
5
- import { usePIPWindow } from '../PIP/usePIPWindow';
6
-
7
- export const MessageNotifications = () => {
8
- const notification = useHMSNotifications(HMSNotificationTypes.NEW_MESSAGE);
9
- const amIScreenSharing = useHMSStore(selectIsLocalScreenShared);
10
- const logoURL = useRoomLayout()?.logo?.url;
11
- const { pipWindow } = usePIPWindow();
12
- const { showNotification } = useAwayNotifications();
13
-
14
- useEffect(() => {
15
- if (notification && amIScreenSharing && !notification.data?.ignored && !pipWindow) {
16
- showNotification(`New message from ${notification.data.senderName}`, {
17
- body: notification.data.message,
18
- icon: logoURL,
19
- });
20
- }
21
- }, [notification]);
22
-
23
- return null;
24
- };
@@ -1,65 +0,0 @@
1
- /* eslint-disable no-case-declarations */
2
- import React, { useCallback } from 'react';
3
- import { HMSRoleChangeRequest, HMSRoomState, selectRoomState, useCustomEvent, useHMSStore } from '@100mslive/react-sdk';
4
- // @ts-ignore: No implicit Any
5
- import { ToastManager } from '../Toast/ToastManager';
6
- import { AutoplayBlockedModal } from './AutoplayBlockedModal';
7
- import { ChatNotifications } from './ChatNotifications';
8
- import { DeviceChangeNotifications } from './DeviceChangeNotifications';
9
- import { DeviceInUseError } from './DeviceInUseError';
10
- import { ErrorNotifications } from './ErrorNotifications';
11
- import { HandRaisedNotifications } from './HandRaisedNotifications';
12
- import { InitErrorModal } from './InitErrorModal';
13
- import { MessageNotifications } from './MessageNotifications';
14
- import { PeerNotifications } from './PeerNotifications';
15
- import { PermissionErrorNotificationModal } from './PermissionErrorModal';
16
- import { PollNotificationModal } from './PollNotificationModal';
17
- import { ReconnectNotifications } from './ReconnectNotifications';
18
- import { RoleChangeNotification } from './RoleChangeNotification';
19
- import { TrackBulkUnmuteModal } from './TrackBulkUnmuteModal';
20
- import { TrackNotifications } from './TrackNotifications';
21
- import { TrackUnmuteModal } from './TrackUnmuteModal';
22
- import { TranscriptionNotifications } from './TranscriptionNotifications';
23
- // @ts-ignore: No implicit Any
24
- import { useIsNotificationDisabled } from '../AppData/useUISettings';
25
- import { ROLE_CHANGE_DECLINED } from '../../common/constants';
26
-
27
- export function Notifications() {
28
- const roomState = useHMSStore(selectRoomState);
29
- const isNotificationDisabled = useIsNotificationDisabled();
30
-
31
- const handleRoleChangeDenied = useCallback((request: HMSRoleChangeRequest & { peerName: string }) => {
32
- ToastManager.addToast({
33
- title: `${request.peerName} denied your request to join the ${request.role.name} role`,
34
- variant: 'error',
35
- });
36
- }, []);
37
-
38
- useCustomEvent({ type: ROLE_CHANGE_DECLINED, onEvent: handleRoleChangeDenied });
39
-
40
- if (isNotificationDisabled) {
41
- return null;
42
- }
43
-
44
- return (
45
- <>
46
- <TrackUnmuteModal />
47
- <TrackBulkUnmuteModal />
48
- <TrackNotifications />
49
- {roomState === HMSRoomState.Connected ? <PeerNotifications /> : null}
50
- <RoleChangeNotification />
51
- <PollNotificationModal />
52
- <MessageNotifications />
53
- <DeviceChangeNotifications />
54
- <ReconnectNotifications />
55
- <ErrorNotifications />
56
- <AutoplayBlockedModal />
57
- <PermissionErrorNotificationModal />
58
- <InitErrorModal />
59
- <ChatNotifications />
60
- <HandRaisedNotifications />
61
- <TranscriptionNotifications />
62
- <DeviceInUseError />
63
- </>
64
- );
65
- }
@@ -1,52 +0,0 @@
1
- import { useEffect } from 'react';
2
- import { HMSNotificationTypes, useHMSNotifications } from '@100mslive/react-sdk';
3
- // @ts-ignore: No implicit Any
4
- import { ToastBatcher } from '../Toast/ToastBatcher';
5
- // @ts-ignore: No implicit Any
6
- import { useSetSubscribedChatSelector, useSubscribedNotifications } from '../AppData/useUISettings';
7
- // @ts-ignore: No implicit Any
8
- import { CHAT_SELECTOR, SUBSCRIBED_NOTIFICATIONS } from '../../common/constants';
9
-
10
- const notificationTypes = [
11
- HMSNotificationTypes.PEER_JOINED,
12
- HMSNotificationTypes.PEER_LEFT,
13
- HMSNotificationTypes.NAME_UPDATED,
14
- ];
15
-
16
- export const PeerNotifications = () => {
17
- const notification = useHMSNotifications(notificationTypes);
18
- const isPeerJoinSubscribed = useSubscribedNotifications(SUBSCRIBED_NOTIFICATIONS.PEER_JOINED);
19
- const isPeerLeftSubscribed = useSubscribedNotifications(SUBSCRIBED_NOTIFICATIONS.PEER_LEFT);
20
- const [selectedPeer, setPeerSelector] = useSetSubscribedChatSelector(CHAT_SELECTOR.PEER);
21
-
22
- useEffect(() => {
23
- if (!notification?.data) {
24
- return;
25
- }
26
-
27
- console.debug(`[${notification.type}]`, notification);
28
- switch (notification.type) {
29
- case HMSNotificationTypes.PEER_JOINED:
30
- if (!isPeerJoinSubscribed) {
31
- return;
32
- }
33
- break;
34
- case HMSNotificationTypes.PEER_LEFT:
35
- if (selectedPeer.id === notification.data.id) {
36
- setPeerSelector({});
37
- }
38
- if (!isPeerLeftSubscribed) {
39
- return;
40
- }
41
- break;
42
- case HMSNotificationTypes.NAME_UPDATED:
43
- console.log(notification.data.id + ' changed their name to ' + notification.data.name);
44
- return;
45
- default:
46
- return;
47
- }
48
- ToastBatcher.showToast({ notification });
49
- }, [notification]);
50
-
51
- return null;
52
- };