agora-appbuilder-core 4.0.0-api.5 → 4.0.0-api.6

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 (406) hide show
  1. package/package.json +2 -2
  2. package/template/.bundle/config +2 -0
  3. package/template/Gemfile +4 -0
  4. package/template/Gulpfile.js +29 -29
  5. package/template/_eslintrc.js +3 -3
  6. package/template/_gitignore +12 -11
  7. package/template/_package-lock.json +26471 -22749
  8. package/template/_prettierrc.js +2 -2
  9. package/template/agora-rn-uikit/src/Contexts/PropsContext.tsx +30 -10
  10. package/template/agora-rn-uikit/src/Contexts/RtcContext.tsx +19 -0
  11. package/template/agora-rn-uikit/src/Controls/BtnTemplate.tsx +1 -0
  12. package/template/agora-rn-uikit/src/Controls/Icons.ts +45 -0
  13. package/template/agora-rn-uikit/src/Controls/Local/EndCall.tsx +6 -4
  14. package/template/agora-rn-uikit/src/Controls/Local/FullScreen.tsx +3 -1
  15. package/template/agora-rn-uikit/src/Controls/Local/LocalAudioMute.tsx +1 -0
  16. package/template/agora-rn-uikit/src/Controls/Local/LocalVideoMute.tsx +1 -0
  17. package/template/agora-rn-uikit/src/Controls/Local/SwitchCamera.tsx +1 -0
  18. package/template/agora-rn-uikit/src/Controls/Remote/RemoteAudioMute.tsx +1 -0
  19. package/template/agora-rn-uikit/src/Controls/Remote/RemoteSwap.tsx +3 -1
  20. package/template/agora-rn-uikit/src/Controls/Remote/RemoteVideoMute.tsx +1 -0
  21. package/template/agora-rn-uikit/src/Reducer/ActiveSpeaker.ts +30 -0
  22. package/template/agora-rn-uikit/src/Reducer/LocalMuteAudio.ts +3 -1
  23. package/template/agora-rn-uikit/src/Reducer/LocalMuteVideo.ts +3 -1
  24. package/template/agora-rn-uikit/src/Reducer/LocalPermissionState.ts +1 -1
  25. package/template/agora-rn-uikit/src/Reducer/RemoteAudioStateChanged.ts +3 -3
  26. package/template/agora-rn-uikit/src/Reducer/RemoteVideoStateChanged.ts +5 -4
  27. package/template/agora-rn-uikit/src/Reducer/UpdateDualStreamMode.ts +1 -1
  28. package/template/agora-rn-uikit/src/Reducer/UserJoined.ts +8 -5
  29. package/template/agora-rn-uikit/src/Reducer/UserMuteRemoteAudio.ts +1 -1
  30. package/template/agora-rn-uikit/src/Reducer/UserMuteRemoteVideo.ts +1 -1
  31. package/template/agora-rn-uikit/src/Reducer/UserOffline.ts +1 -1
  32. package/template/agora-rn-uikit/src/Reducer/UserPin.ts +18 -1
  33. package/template/agora-rn-uikit/src/Reducer/UserSecondaryPin.ts +23 -0
  34. package/template/agora-rn-uikit/src/Reducer/index.ts +2 -0
  35. package/template/agora-rn-uikit/src/Rtc/Create.tsx +47 -21
  36. package/template/agora-rn-uikit/src/Rtc/Join.tsx +37 -15
  37. package/template/agora-rn-uikit/src/RtcConfigure.tsx +122 -12
  38. package/template/agora-rn-uikit/src/Views/MaxVideoView.native.tsx +32 -4
  39. package/template/agora-rn-uikit/src/Views/MaxVideoView.tsx +21 -2
  40. package/template/agora-rn-uikit/src/Views/MinVideoView.tsx +2 -0
  41. package/template/android/app/build.gradle +59 -156
  42. package/template/android/app/src/debug/AndroidManifest.xml +6 -1
  43. package/template/android/app/src/debug/java/com/helloworld/ReactNativeFlipper.java +7 -4
  44. package/template/android/app/src/main/AndroidManifest.xml +6 -19
  45. package/template/android/app/src/main/assets/fonts/icomoon.ttf +0 -0
  46. package/template/android/app/src/main/java/com/helloworld/MainActivity.java +17 -0
  47. package/template/android/app/src/main/java/com/helloworld/MainApplication.java +19 -36
  48. package/template/android/app/src/release/java/com/helloworld/ReactNativeFlipper.java +20 -0
  49. package/template/android/build.gradle +19 -33
  50. package/template/android/gradle/wrapper/gradle-wrapper.jar +0 -0
  51. package/template/android/gradle/wrapper/gradle-wrapper.properties +3 -2
  52. package/template/android/gradle.properties +18 -4
  53. package/template/android/gradlew +165 -104
  54. package/template/android/gradlew.bat +12 -23
  55. package/template/android/settings.gradle +1 -0
  56. package/template/bridge/rtc/webNg/RtcEngine.ts +131 -16
  57. package/template/bridge/rtc/webNg/index.ts +72 -1
  58. package/template/bridge/rtm/web/index.ts +5 -3
  59. package/template/configTransform.js +16 -1
  60. package/template/customization-api/action-library.ts +0 -8
  61. package/template/customization-api/app-state.ts +11 -2
  62. package/template/customization-api/customEvents.ts +6 -1
  63. package/template/customization-api/index.ts +4 -0
  64. package/template/customization-api/sub-components.ts +6 -3
  65. package/template/customization-api/temp.ts +50 -0
  66. package/template/customization-api/typeDefinition.ts +26 -14
  67. package/template/customization-api/types.ts +26 -0
  68. package/template/customization-api/utils.ts +2 -0
  69. package/template/customization-implementation/index.ts +0 -1
  70. package/template/defaultConfig.js +72 -0
  71. package/template/global.d.ts +13 -1
  72. package/template/index.js +0 -4
  73. package/template/index.web.js +0 -5
  74. package/template/index.wsdk.tsx +1 -19
  75. package/template/ios/.xcode.env +11 -0
  76. package/template/ios/HelloWorld/AppDelegate.h +2 -4
  77. package/template/ios/HelloWorld/AppDelegate.mm +42 -0
  78. package/template/ios/HelloWorld/Info.plist +1 -1
  79. package/template/ios/HelloWorld/main.m +2 -1
  80. package/template/ios/HelloWorld.xcodeproj/project.pbxproj +529 -17
  81. package/template/ios/HelloWorld.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist +8 -0
  82. package/template/ios/HelloWorld.xcworkspace/contents.xcworkspacedata +10 -0
  83. package/template/ios/HelloWorld.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist +8 -0
  84. package/template/ios/HelloWorldTests/HelloWorldTests.m +14 -13
  85. package/template/ios/HelloWorldTests/Info.plist +2 -2
  86. package/template/ios/Podfile +53 -20
  87. package/template/ios/Podfile.lock +873 -0
  88. package/template/ios/ScreenSharing/Info.plist +15 -0
  89. package/template/ios/ScreenSharing/SampleHandler.h +9 -0
  90. package/template/ios/ScreenSharing/SampleHandler.m +70 -0
  91. package/template/jest.config.js +4 -0
  92. package/template/metro.config.js +7 -32
  93. package/template/package.json +52 -39
  94. package/template/react-native-toast-message/index.d.ts +3 -1
  95. package/template/react-native-toast-message/index.js +1 -0
  96. package/template/react-native-toast-message/src/components/base/index.js +20 -32
  97. package/template/react-native-toast-message/src/components/base/styles.js +18 -21
  98. package/template/react-native-toast-message/src/components/checkbox.js +24 -19
  99. package/template/react-native-toast-message/src/index.js +3 -1
  100. package/template/react-native-toast-message/src/index.sdk.tsx +4 -1
  101. package/template/src/App.tsx +13 -85
  102. package/template/src/AppRoutes.tsx +77 -0
  103. package/template/src/AppWrapper.tsx +38 -33
  104. package/template/src/SDKAppWrapper.tsx +79 -43
  105. package/template/src/app-state/useNoiseSupression.native.tsx +67 -0
  106. package/template/src/app-state/useNoiseSupression.tsx +107 -0
  107. package/template/src/app-state/useVideoQuality.tsx +39 -0
  108. package/template/src/assets/font-styles.css +171 -3
  109. package/template/src/assets/fonts/icomoon.ttf +0 -0
  110. package/template/src/assets/selection.json +1 -1
  111. package/template/src/atoms/ActionMenu.tsx +50 -11
  112. package/template/src/atoms/Avatar.tsx +51 -0
  113. package/template/src/atoms/Card.tsx +21 -8
  114. package/template/src/atoms/Carousel.native.tsx +105 -0
  115. package/template/src/atoms/Carousel.tsx +103 -0
  116. package/template/src/atoms/Checkbox.tsx +98 -0
  117. package/template/src/atoms/CircularProgress.tsx +0 -1
  118. package/template/src/atoms/ClipboardIconButton.tsx +91 -0
  119. package/template/src/atoms/CustomIcon.tsx +45 -0
  120. package/template/src/atoms/DropDownMulti.tsx +349 -0
  121. package/template/src/atoms/Dropdown.tsx +3 -3
  122. package/template/src/atoms/IconButton.tsx +52 -9
  123. package/template/src/atoms/ImageIcon.tsx +6 -3
  124. package/template/src/atoms/InlineNotification.tsx +81 -0
  125. package/template/src/atoms/MeetingLink.tsx +160 -0
  126. package/template/src/atoms/ParticipantsCount.tsx +18 -7
  127. package/template/src/atoms/Popup.tsx +49 -27
  128. package/template/src/atoms/PrimaryButton.tsx +19 -5
  129. package/template/src/atoms/RecordingInfo.tsx +2 -2
  130. package/template/src/atoms/SecondaryButton.tsx +2 -0
  131. package/template/src/atoms/Spacer.tsx +1 -0
  132. package/template/src/atoms/TertiaryButton.tsx +35 -5
  133. package/template/src/atoms/TextInput.tsx +2 -1
  134. package/template/src/atoms/Toolbar.tsx +64 -30
  135. package/template/src/atoms/ToolbarItem.tsx +11 -5
  136. package/template/src/atoms/ToolbarPreset.tsx +13 -2
  137. package/template/src/atoms/Tooltip.tsx +26 -4
  138. package/template/src/auth/AuthProvider.tsx +500 -0
  139. package/template/src/auth/AuthRoute.tsx +94 -0
  140. package/template/src/auth/IDPAuth.electron.tsx +31 -0
  141. package/template/src/auth/IDPAuth.tsx +67 -0
  142. package/template/src/auth/IDPLogoutComponent.tsx +158 -0
  143. package/template/src/auth/UserCancelPopup.tsx +115 -0
  144. package/template/src/auth/config.ts +52 -0
  145. package/template/src/auth/openIDPURL.electron.tsx +39 -0
  146. package/template/src/auth/openIDPURL.native.tsx +51 -0
  147. package/template/src/auth/openIDPURL.tsx +20 -0
  148. package/template/src/auth/useIDPAuth.electron.tsx +65 -0
  149. package/template/src/auth/useIDPAuth.native.tsx +70 -0
  150. package/template/src/auth/useIDPAuth.tsx +63 -0
  151. package/template/src/auth/useTokenAuth.tsx +194 -0
  152. package/template/src/components/Chat.tsx +5 -8
  153. package/template/src/components/ChatContext.ts +4 -0
  154. package/template/src/components/ColorConfigure.tsx +0 -1
  155. package/template/src/components/CommonStyles.ts +9 -2
  156. package/template/src/components/Controls.tsx +659 -52
  157. package/template/src/components/DeviceConfigure.tsx +362 -156
  158. package/template/src/components/DeviceContext.tsx +2 -0
  159. package/template/src/components/EventsConfigure.tsx +713 -109
  160. package/template/src/components/GraphQLProvider.tsx +62 -36
  161. package/template/src/components/GridVideo.tsx +23 -13
  162. package/template/src/components/HostControlView.tsx +11 -14
  163. package/template/src/components/JoinPhrase.tsx +0 -1
  164. package/template/src/components/Leftbar.tsx +4 -3
  165. package/template/src/components/Navbar.tsx +110 -42
  166. package/template/src/components/NavbarMobile.tsx +47 -36
  167. package/template/src/components/Navigation.native.tsx +1 -15
  168. package/template/src/{subComponents/screenshare/ScreenshareButton.native.tsx → components/Navigation.sdk.tsx} +17 -3
  169. package/template/src/components/Navigation.tsx +1 -15
  170. package/template/src/components/ParticipantsView.tsx +56 -48
  171. package/template/src/components/PinnedVideo.tsx +188 -114
  172. package/template/src/components/Precall.native.tsx +169 -67
  173. package/template/src/components/Precall.tsx +237 -71
  174. package/template/src/components/RTMConfigure.tsx +167 -55
  175. package/template/src/components/Rightbar.tsx +4 -3
  176. package/template/src/components/Router.electron.ts +1 -0
  177. package/template/src/components/Router.native.ts +1 -0
  178. package/template/src/components/Router.sdk.ts +1 -0
  179. package/template/src/components/Router.ts +1 -0
  180. package/template/src/components/SdkApiContext.tsx +179 -27
  181. package/template/src/components/SdkMuteToggleListener.tsx +88 -0
  182. package/template/src/components/SessionContext.tsx +0 -1
  183. package/template/src/components/Settings.tsx +25 -3
  184. package/template/src/components/SettingsView.tsx +44 -9
  185. package/template/src/components/Share.tsx +149 -71
  186. package/template/src/components/StorageContext.tsx +19 -5
  187. package/template/src/components/ToastComponent.tsx +3 -0
  188. package/template/src/components/WhiteboardLayout.tsx +291 -0
  189. package/template/src/components/chat-messages/useChatMessages.tsx +420 -207
  190. package/template/src/components/common/Error.tsx +2 -0
  191. package/template/src/components/common/Logo.tsx +2 -2
  192. package/template/src/components/contexts/LiveStreamDataContext.tsx +5 -4
  193. package/template/src/components/contexts/ScreenShareContext.tsx +15 -1
  194. package/template/src/components/contexts/WaitingRoomContext.tsx +50 -0
  195. package/template/src/components/contexts/WhiteboardContext.tsx +54 -54
  196. package/template/src/components/disable-chat/useDisableChat.tsx +32 -0
  197. package/template/src/components/livestream/LiveStreamContext.tsx +262 -177
  198. package/template/src/components/livestream/Types.ts +34 -18
  199. package/template/src/components/livestream/views/LiveStreamAttendeeLandingTile.tsx +295 -0
  200. package/template/src/components/livestream/views/LiveStreamControls.tsx +2 -4
  201. package/template/src/components/meeting-info-invite/MeetingInfo.tsx +82 -0
  202. package/template/src/components/meeting-info-invite/MeetingInfoCardHeader.tsx +86 -0
  203. package/template/src/components/meeting-info-invite/MeetingInfoGridTile.tsx +218 -0
  204. package/template/src/components/meeting-info-invite/MeetingInfoLinks.tsx +122 -0
  205. package/template/src/components/participants/AllAudienceParticipants.tsx +4 -5
  206. package/template/src/components/participants/AllHostParticipants.tsx +5 -6
  207. package/template/src/components/participants/Participant.tsx +40 -9
  208. package/template/src/components/participants/ParticipantSectionTitle.tsx +5 -2
  209. package/template/src/components/participants/ScreenshareParticipants.tsx +15 -17
  210. package/template/src/components/participants/UserActionMenuOptions.tsx +157 -49
  211. package/template/src/components/participants/WaitingRoomParticipants.tsx +74 -0
  212. package/template/src/components/popups/InvitePopup.tsx +110 -45
  213. package/template/src/components/popups/StartScreenSharePopup.native.tsx +182 -0
  214. package/template/src/components/popups/StartScreenSharePopup.tsx +6 -0
  215. package/template/src/components/popups/StopRecordingPopup.tsx +11 -5
  216. package/template/src/components/popups/StopScreenSharePopup.native.tsx +135 -0
  217. package/template/src/components/popups/StopScreenSharePopup.tsx +6 -0
  218. package/template/src/components/popups/WhiteboardClearAllPopup.tsx +123 -0
  219. package/template/src/components/precall/LocalMute.tsx +69 -45
  220. package/template/src/components/precall/PermissionHelper.tsx +52 -24
  221. package/template/src/components/precall/PreCallSettings.tsx +1 -0
  222. package/template/src/components/precall/VideoFallback.tsx +173 -0
  223. package/template/src/components/precall/VideoPreview.native.tsx +16 -50
  224. package/template/src/components/precall/VideoPreview.tsx +27 -162
  225. package/template/src/components/precall/index.tsx +2 -0
  226. package/template/src/components/precall/joinCallBtn.native.tsx +10 -3
  227. package/template/src/components/precall/joinCallBtn.tsx +11 -2
  228. package/template/src/components/precall/joinWaitingRoomBtn.native.tsx +210 -0
  229. package/template/src/components/precall/joinWaitingRoomBtn.tsx +250 -0
  230. package/template/src/components/precall/meetingTitle.tsx +35 -9
  231. package/template/src/components/precall/selectDevice.tsx +5 -5
  232. package/template/src/components/precall/textInput.tsx +16 -18
  233. package/template/src/components/precall/usePreCall.tsx +14 -4
  234. package/template/src/components/room-info/useRoomInfo.tsx +34 -0
  235. package/template/src/components/useShareLink.tsx +24 -59
  236. package/template/src/components/useUserPreference.tsx +73 -10
  237. package/template/src/components/useVideoCall.tsx +76 -3
  238. package/template/src/components/virtual-background/VBButton.tsx +64 -0
  239. package/template/src/components/virtual-background/VBCard.native.tsx +282 -0
  240. package/template/src/components/virtual-background/VBCard.tsx +272 -0
  241. package/template/src/components/virtual-background/VBPanel.tsx +279 -0
  242. package/template/src/components/virtual-background/VButils.native.ts +37 -0
  243. package/template/src/components/virtual-background/VButils.ts +104 -0
  244. package/template/src/components/virtual-background/VideoPreview.native.tsx +43 -0
  245. package/template/src/components/virtual-background/VideoPreview.tsx +106 -0
  246. package/template/src/components/virtual-background/imagePaths.ts +87 -0
  247. package/template/src/components/virtual-background/images/beachImageBase64.ts +1 -0
  248. package/template/src/components/virtual-background/images/bedroomImageBase64.ts +1 -0
  249. package/template/src/components/virtual-background/images/bookImageBase64.ts +1 -0
  250. package/template/src/components/virtual-background/images/earthImageBase64.ts +1 -0
  251. package/template/src/components/virtual-background/images/index.ts +37 -0
  252. package/template/src/components/virtual-background/images/lampImageBase64.ts +1 -0
  253. package/template/src/components/virtual-background/images/mountainsImageBase64.ts +1 -0
  254. package/template/src/components/virtual-background/images/office1ImageBase64.ts +1 -0
  255. package/template/src/components/virtual-background/images/officeImageBase64.ts +1 -0
  256. package/template/src/components/virtual-background/images/plantsImageBase64.ts +1 -0
  257. package/template/src/components/virtual-background/images/skyImageBase64.ts +1 -0
  258. package/template/src/components/virtual-background/images/wallImageBase64.ts +1 -0
  259. package/template/src/components/virtual-background/useVB.native.tsx +188 -0
  260. package/template/src/components/virtual-background/useVB.tsx +267 -0
  261. package/template/src/components/whiteboard/StrokeWidthTool.tsx +137 -0
  262. package/template/src/components/whiteboard/WhiteboardButton.tsx +93 -0
  263. package/template/src/components/whiteboard/WhiteboardCanvas.tsx +99 -0
  264. package/template/src/components/whiteboard/WhiteboardConfigure.native.tsx +137 -0
  265. package/template/src/components/whiteboard/WhiteboardConfigure.tsx +441 -0
  266. package/template/src/components/whiteboard/WhiteboardCursor.tsx +152 -0
  267. package/template/src/components/whiteboard/WhiteboardToolBox.tsx +1246 -0
  268. package/template/src/components/whiteboard/WhiteboardView.native.tsx +109 -0
  269. package/template/src/components/whiteboard/WhiteboardView.tsx +81 -0
  270. package/template/src/components/whiteboard/WhiteboardWidget.tsx +674 -0
  271. package/template/src/components/whiteboard/WhiteboardWrapper.tsx +38 -0
  272. package/template/src/language/default-labels/commonLabels.ts +51 -14
  273. package/template/src/language/default-labels/createScreenLabels.ts +97 -17
  274. package/template/src/language/default-labels/joinScreenLabels.ts +45 -6
  275. package/template/src/language/default-labels/precallScreenLabels.ts +145 -23
  276. package/template/src/language/default-labels/shareLinkScreenLabels.ts +85 -37
  277. package/template/src/language/default-labels/videoCallScreenLabels.ts +1137 -158
  278. package/template/src/pages/Create.tsx +125 -80
  279. package/template/src/pages/Join.tsx +76 -34
  280. package/template/src/pages/Login.tsx +26 -0
  281. package/template/src/pages/VideoCall.tsx +229 -114
  282. package/template/src/pages/video-call/ActionSheet.native.tsx +54 -7
  283. package/template/src/pages/video-call/ActionSheet.tsx +55 -16
  284. package/template/src/pages/video-call/ActionSheetContent.tsx +366 -291
  285. package/template/src/pages/video-call/ActionSheetHandle.tsx +7 -1
  286. package/template/src/pages/video-call/DefaultLayouts.ts +11 -5
  287. package/template/src/pages/video-call/NameWithMicIcon.tsx +17 -9
  288. package/template/src/pages/video-call/PinchableView.tsx +119 -0
  289. package/template/src/pages/video-call/RenderComponent.tsx +12 -3
  290. package/template/src/pages/video-call/SidePanelHeader.tsx +208 -6
  291. package/template/src/pages/video-call/VideoCallMobileView.tsx +140 -106
  292. package/template/src/pages/video-call/VideoCallScreen.native.tsx +3 -2
  293. package/template/src/pages/video-call/VideoCallScreen.tsx +113 -66
  294. package/template/src/pages/video-call/VideoComponent.tsx +53 -5
  295. package/template/src/pages/video-call/VideoRenderer.tsx +309 -52
  296. package/template/src/pages/video-call/VisibilitySensor.tsx +104 -0
  297. package/template/src/pages/video-call/ZoomableWrapper.native.tsx +34 -0
  298. package/template/src/pages/video-call/ZoomableWrapper.tsx +5 -0
  299. package/template/src/pages/video-call/index.ts +2 -0
  300. package/template/src/rtm/RTMEngine.ts +9 -4
  301. package/template/src/rtm-events/constants.ts +20 -0
  302. package/template/src/rtm-events-api/Events.ts +2 -0
  303. package/template/src/rtm-events-api/LocalEvents.ts +8 -0
  304. package/template/src/selection.json +1 -0
  305. package/template/src/subComponents/ChatBubble.tsx +81 -64
  306. package/template/src/subComponents/ChatContainer.tsx +20 -13
  307. package/template/src/subComponents/ChatInput.ios.tsx +11 -2
  308. package/template/src/subComponents/ChatInput.tsx +12 -3
  309. package/template/src/subComponents/Checkbox.native.tsx +46 -46
  310. package/template/src/subComponents/Checkbox.tsx +7 -6
  311. package/template/src/subComponents/CopyJoinInfo.tsx +26 -11
  312. package/template/src/subComponents/EndcallPopup.tsx +83 -12
  313. package/template/src/subComponents/LanguageSelector.tsx +34 -30
  314. package/template/src/subComponents/LayoutIconButton.tsx +30 -8
  315. package/template/src/subComponents/LayoutIconDropdown.tsx +19 -3
  316. package/template/src/subComponents/Loading.tsx +60 -0
  317. package/template/src/subComponents/LocalAudioMute.tsx +106 -30
  318. package/template/src/subComponents/LocalEndCall.tsx +91 -15
  319. package/template/src/subComponents/LocalSwitchCamera.tsx +50 -11
  320. package/template/src/subComponents/LocalVideoMute.tsx +126 -32
  321. package/template/src/subComponents/LogoutButton.tsx +1 -1
  322. package/template/src/subComponents/NetworkQualityPill.tsx +14 -31
  323. package/template/src/subComponents/Recording.tsx +23 -6
  324. package/template/src/subComponents/RemoteAudioMute.tsx +3 -3
  325. package/template/src/subComponents/RemoteMutePopup.tsx +55 -14
  326. package/template/src/subComponents/RemoteVideoMute.tsx +3 -3
  327. package/template/src/subComponents/RemoveMeetingPopup.tsx +19 -6
  328. package/template/src/subComponents/RemoveScreensharePopup.tsx +20 -5
  329. package/template/src/subComponents/ScreenShareNotice.tsx +11 -6
  330. package/template/src/subComponents/SelectDevice.tsx +98 -32
  331. package/template/src/subComponents/SidePanelEnum.tsx +2 -0
  332. package/template/src/subComponents/SidePanelHeader.tsx +97 -63
  333. package/template/src/subComponents/ToastConfig.tsx +70 -61
  334. package/template/src/subComponents/caption/Caption.tsx +130 -0
  335. package/template/src/subComponents/caption/CaptionContainer.tsx +302 -0
  336. package/template/src/subComponents/caption/CaptionIcon.tsx +111 -0
  337. package/template/src/subComponents/caption/CaptionText.tsx +182 -0
  338. package/template/src/subComponents/caption/DownloadTranscriptBtn.tsx +65 -0
  339. package/template/src/subComponents/caption/LanguageSelectorPopup.tsx +192 -0
  340. package/template/src/subComponents/caption/Transcript.tsx +449 -0
  341. package/template/src/subComponents/caption/TranscriptIcon.tsx +123 -0
  342. package/template/src/subComponents/caption/TranscriptText.tsx +98 -0
  343. package/template/src/subComponents/caption/index.ts +3 -0
  344. package/template/src/subComponents/caption/proto/ptoto.js +91 -0
  345. package/template/src/subComponents/caption/proto/test.proto +23 -0
  346. package/template/src/subComponents/caption/useCaption.tsx +123 -0
  347. package/template/src/subComponents/caption/useCaptionWidth.ts +27 -0
  348. package/template/src/subComponents/caption/useSTTAPI.tsx +179 -0
  349. package/template/src/subComponents/caption/useStreamMessageUtils.native.ts +211 -0
  350. package/template/src/subComponents/caption/useStreamMessageUtils.ts +235 -0
  351. package/template/src/subComponents/caption/useTranscriptDownload.native.ts +68 -0
  352. package/template/src/subComponents/caption/useTranscriptDownload.ts +52 -0
  353. package/template/src/subComponents/caption/utils.ts +125 -0
  354. package/template/src/subComponents/chat/ChatParticipants.tsx +53 -17
  355. package/template/src/subComponents/livestream/CurrentLiveStreamRequestsView.tsx +11 -13
  356. package/template/src/subComponents/livestream/controls/LocalRaiseHand.tsx +33 -9
  357. package/template/src/subComponents/livestream/controls/RemoteLiveStreamApprovedRequestRecall.tsx +1 -0
  358. package/template/src/subComponents/livestream/controls/RemoteLiveStreamRequestApprove.tsx +10 -6
  359. package/template/src/subComponents/livestream/controls/RemoteLiveStreamRequestReject.tsx +28 -19
  360. package/template/src/subComponents/recording/useRecording.tsx +49 -20
  361. package/template/src/subComponents/recording/useRecordingLayoutQuery.tsx +0 -1
  362. package/template/src/subComponents/screenshare/ScreenshareButton.tsx +29 -10
  363. package/template/src/subComponents/screenshare/ScreenshareConfigure.native.tsx +270 -66
  364. package/template/src/subComponents/screenshare/ScreenshareConfigure.tsx +182 -95
  365. package/template/src/subComponents/screenshare/useScreenshare.tsx +2 -0
  366. package/template/src/subComponents/waiting-rooms/WaitingRoomControls.tsx +85 -0
  367. package/template/src/subComponents/waiting-rooms/useWaitingRoomAPI.ts +75 -0
  368. package/template/src/theme/index.ts +9 -0
  369. package/template/src/utils/SdkEvents.ts +14 -0
  370. package/template/src/utils/SdkMethodEvents.ts +23 -3
  371. package/template/src/utils/axiomLogger.ts +117 -0
  372. package/template/src/utils/book.jpg +0 -0
  373. package/template/src/utils/common.tsx +118 -6
  374. package/template/src/utils/endCallEveryOne.ts +7 -0
  375. package/template/src/utils/getCustomRoute.ts +7 -0
  376. package/template/src/utils/index.tsx +23 -0
  377. package/template/src/utils/useActionSheet.tsx +50 -0
  378. package/template/src/utils/useActiveSpeaker.ts +3 -7
  379. package/template/src/utils/useAppState.ts +17 -0
  380. package/template/src/utils/useAsyncEffect.ts +138 -0
  381. package/template/src/utils/useCreateRoom.ts +8 -12
  382. package/template/src/utils/useDisableButton.tsx +37 -0
  383. package/template/src/utils/useFindActiveSpeaker.native.ts +4 -0
  384. package/template/src/utils/useFindActiveSpeaker.ts +335 -0
  385. package/template/src/utils/useIsLocalUserSpeaking.native.ts +4 -0
  386. package/template/src/utils/useIsLocalUserSpeaking.ts +98 -0
  387. package/template/src/utils/useJoinRoom.ts +97 -36
  388. package/template/src/utils/useMuteToggleLocal.ts +114 -96
  389. package/template/src/utils/useString.ts +13 -3
  390. package/template/static.d.ts +42 -0
  391. package/template/tsconfig_rsdk_index.json +3 -3
  392. package/template/tsconfig_wsdk_index.json +1 -1
  393. package/template/web/index.html +20 -0
  394. package/template/webpack.commons.js +21 -10
  395. package/template/webpack.web.config.js +7 -3
  396. package/template/_buckconfig +0 -6
  397. package/template/_gitattributes +0 -1
  398. package/template/android/app/_BUCK +0 -55
  399. package/template/android/app/build_defs.bzl +0 -19
  400. package/template/ios/HelloWorld/AppDelegate.m +0 -74
  401. package/template/src/components/OAuth.electron.tsx +0 -41
  402. package/template/src/components/OAuth.native.tsx +0 -55
  403. package/template/src/components/OAuth.tsx +0 -30
  404. package/template/src/components/OAuthConfig.ts +0 -77
  405. package/template/src/components/Settings.native.tsx +0 -21
  406. package/template/src/components/StoreToken.tsx +0 -39
@@ -1,21 +1,58 @@
1
1
  import {I18nBaseType} from '../i18nTypes';
2
2
 
3
+ export const cancelText = 'cancelText';
4
+ export const loadingText = 'loadingText';
5
+ export const logoutText = 'logoutText';
6
+ export const authLogoutPopupHeading = 'authLogoutPopupHeading';
7
+ export const authLogoutPopupSubHeading = 'authLogoutPopupSubHeading';
8
+ export const authLogoutPopupPrimaryBtnText = 'authLogoutPopupPrimaryBtnText';
9
+ export const authLogInRequiredPopupHeading = 'authLogInRequiredPopupHeading';
10
+ export const authLogInRequiredPopupSubHeading =
11
+ 'authLogInRequiredPopupSubHeading';
12
+ export const authLogInRequiredPopupPrimaryBtnText =
13
+ 'authLogInRequiredPopupPrimaryBtnText';
14
+ export const authLogInRequiredPopupSecondaryBtnText =
15
+ 'authLogInRequiredPopupSecondaryBtnText';
16
+
17
+ export const authSessionTimeoutToastHeading = 'authSessionTimeoutToastHeading';
18
+ export const authErrorOnLoginToastHeading = 'authErrorOnLoginToastHeading';
19
+ export const authAuthenticationFailedText = 'authAuthenticationFailedText';
20
+ export const authAuthorizingApplicationText = 'authAuthorizingApplicationText';
21
+
3
22
  export interface I18nCommonLabelsInterface {
4
- //commented for v1 release
5
- // goBackButton?: I18nBaseType; //
6
- // logoutButton?: I18nBaseType; //
7
- // googleAuthButton?: I18nBaseType; //
8
- // microsoftAuthButton?: I18nBaseType; //
9
- // slackAuthButton?: I18nBaseType; //
10
- // appleAuthButton?: I18nBaseType; //
23
+ [cancelText]?: I18nBaseType;
24
+ [loadingText]?: I18nBaseType;
25
+ [logoutText]?: I18nBaseType;
26
+ [authLogoutPopupHeading]?: I18nBaseType;
27
+ [authLogoutPopupSubHeading]?: I18nBaseType;
28
+ [authLogoutPopupPrimaryBtnText]?: I18nBaseType;
29
+
30
+ [authLogInRequiredPopupHeading]?: I18nBaseType;
31
+ [authLogInRequiredPopupSubHeading]?: I18nBaseType;
32
+ [authLogInRequiredPopupPrimaryBtnText]?: I18nBaseType;
33
+ [authLogInRequiredPopupSecondaryBtnText]?: I18nBaseType;
34
+
35
+ [authSessionTimeoutToastHeading]?: I18nBaseType;
36
+ [authErrorOnLoginToastHeading]?: I18nBaseType;
37
+ [authAuthenticationFailedText]?: I18nBaseType;
38
+ [authAuthorizingApplicationText]?: I18nBaseType;
11
39
  }
12
40
 
13
41
  export const CommonLabels: I18nCommonLabelsInterface = {
14
- //commented for v1 release
15
- // goBackButton: 'Go back',
16
- // logoutButton: 'Logout',
17
- // googleAuthButton: 'Google',
18
- // microsoftAuthButton: 'Microsoft',
19
- // slackAuthButton: 'Slack',
20
- // appleAuthButton: 'Apple',
42
+ [cancelText]: 'CANCEL',
43
+ [loadingText]: 'Loading...',
44
+ [logoutText]: 'Logout',
45
+ [authLogoutPopupHeading]: 'Logout?',
46
+ [authLogoutPopupSubHeading]: 'Are you sure you wanna log out?',
47
+ [authLogoutPopupPrimaryBtnText]: 'CONFIRM',
48
+
49
+ [authLogInRequiredPopupHeading]: 'Login Required',
50
+ [authLogInRequiredPopupSubHeading]: 'Log-in to your organization to contiue',
51
+ [authLogInRequiredPopupPrimaryBtnText]: 'LOGIN',
52
+ [authLogInRequiredPopupSecondaryBtnText]: 'CLOSE APP',
53
+
54
+ [authSessionTimeoutToastHeading]: 'Your session has timed out, Retrying...',
55
+ [authErrorOnLoginToastHeading]: 'Error occured on Login, Please login again.',
56
+ [authAuthenticationFailedText]: 'Authentication failed',
57
+ [authAuthorizingApplicationText]: 'Authorizing app...',
21
58
  };
@@ -1,22 +1,102 @@
1
- import {I18nBaseType, I18nConditionalType} from '../i18nTypes';
1
+ import {I18nBaseType, I18nDynamicType} from '../i18nTypes';
2
+
3
+ export const room = 'Room';
4
+ export const createRoomHeading = `create${room}Heading`;
5
+ export const createRoomInputLabel = `create${room}InputLabel`;
6
+ export const createRoomInputPlaceholderText = `create${room}InputPlaceholderText`;
7
+ export const createRoomMakeEveryOneCoHost = `create${room}MakeEveryOneCoHost`;
8
+ export const createRoomMakeEveryOneCoHostTooltipText = `create${room}MakeEveryOneCoHostTooltipText`;
9
+
10
+ export const createRoomAllowPhoneNumberJoining = `create${room}AllowPhoneNumberJoining`;
11
+ export const createRoomAllowPhoneNumberJoiningTooltipText = `create${room}AllowPhoneNumberJoiningTooltipText`;
12
+
13
+ export const createRoomBtnText = `create${room}BtnText`;
14
+ export const createRoomJoinWithID = `create${room}JoinWithID`;
15
+
16
+ export const createRoomSuccessToastHeading = `create${room}SuccessToastHeading`;
17
+ export const createRoomSuccessToastSubHeading = `create${room}SuccessToastSubHeading`;
18
+
19
+ export const createRoomErrorToastHeading = `create${room}ErrorToastHeading`;
20
+ export const createRoomErrorToastSubHeading = `create${room}ErrorToastSubHeading`;
21
+ // [screen/[sidepanel/chat/setting/vb]] [room or action] [where is placed/label/text/heading/subheading/tooltiptext/content]
22
+ //label for buttons
23
+ //heading/subheading for toast
24
+ //text inside button text
25
+ //text outside button called label
26
+ //btn use chatPanel
27
+ //chatPanelInputPlaceHolder
28
+ //settingPanelHeading
2
29
 
3
30
  export interface I18nCreateScreenLabelsInterface {
4
- meetingNameInputPlaceholder?: I18nBaseType; //
5
- //commented for v1 release
6
- // createMeetingButton?: I18nBaseType; //
7
- // haveMeetingID?: I18nBaseType;
8
- // pstnToggle?: I18nConditionalType; //
9
- // hostControlsToggle?: I18nConditionalType; //
31
+ [createRoomHeading]?: I18nBaseType;
32
+ [createRoomInputLabel]?: I18nBaseType;
33
+ [createRoomInputPlaceholderText]?: I18nBaseType;
34
+ [createRoomMakeEveryOneCoHost]?: I18nBaseType; //
35
+ [createRoomMakeEveryOneCoHostTooltipText]?: I18nBaseType; //
36
+ [createRoomAllowPhoneNumberJoining]?: I18nBaseType; //
37
+ [createRoomAllowPhoneNumberJoiningTooltipText]?: I18nBaseType; //
38
+ [createRoomBtnText]?: I18nBaseType;
39
+ [createRoomJoinWithID]?: I18nBaseType; //
40
+ [createRoomSuccessToastHeading]?: I18nDynamicType; //
41
+ [createRoomSuccessToastSubHeading]?: I18nBaseType; //
42
+ [createRoomErrorToastHeading]?: I18nBaseType; //
43
+ [createRoomErrorToastSubHeading]?: I18nBaseType; //
10
44
  }
11
-
12
45
  export const CreateScreenLabels: I18nCreateScreenLabelsInterface = {
13
- meetingNameInputPlaceholder: 'Name your Room',
14
- //commented for v1 release
15
- // createMeetingButton: 'Create Room',
16
- // haveMeetingID: 'Have a Room ID?',
17
- // pstnToggle: 'Use PSTN (Join by dialing a number)',
18
- // hostControlsToggle: (toggle) =>
19
- // toggle
20
- // ? 'Restrict Host Controls (Separate host link)'
21
- // : 'Restrict Host Controls (Everyone is a Host)',
46
+ [createRoomHeading]: ({eventMode, audioRoom}) => {
47
+ if (audioRoom) {
48
+ if (eventMode) {
49
+ return 'Create a Audio Livecast';
50
+ } else {
51
+ return 'Create a Voice Chat';
52
+ }
53
+ } else {
54
+ if (eventMode) {
55
+ return 'Create a Livestream';
56
+ } else {
57
+ return 'Create a Room';
58
+ }
59
+ }
60
+ },
61
+ [createRoomInputLabel]: ({eventMode, audioRoom}) => {
62
+ if (audioRoom) {
63
+ if (eventMode) {
64
+ return 'Audio Livecast Name';
65
+ } else {
66
+ return 'Voice Chat Name';
67
+ }
68
+ } else {
69
+ if (eventMode) {
70
+ return 'Stream Name';
71
+ } else {
72
+ return 'Room Name';
73
+ }
74
+ }
75
+ },
76
+ [createRoomInputPlaceholderText]: 'The Annual Galactic Meet',
77
+ [createRoomMakeEveryOneCoHost]: 'Make everyone a Co-Host',
78
+ [createRoomMakeEveryOneCoHostTooltipText]:
79
+ 'Turning on will give everyone the control of this room',
80
+ [createRoomAllowPhoneNumberJoining]: 'Allow joining via a phone number',
81
+ [createRoomAllowPhoneNumberJoiningTooltipText]:
82
+ 'Attendees can dial a number and join via PSTN',
83
+ [createRoomBtnText]: ({eventMode, audioRoom}) => {
84
+ if (audioRoom) {
85
+ if (eventMode) {
86
+ return 'CREATE A AUDIO LIVECAST';
87
+ } else {
88
+ return 'CREATE A VOICE CHAT';
89
+ }
90
+ } else {
91
+ if (eventMode) {
92
+ return 'CREATE A STREAM';
93
+ } else {
94
+ return 'CREATE A ROOM';
95
+ }
96
+ }
97
+ },
98
+ [createRoomJoinWithID]: 'Join with a room ID',
99
+ [createRoomSuccessToastHeading]: (meetingName: string) =>
100
+ `${meetingName} has been created`,
101
+ [createRoomSuccessToastSubHeading]: 'Your New room is now live',
22
102
  };
@@ -1,13 +1,52 @@
1
1
  import {I18nBaseType} from '../i18nTypes';
2
+ import {room} from './createScreenLabels';
3
+
4
+ export const joinRoomHeading = `join${room}Heading`;
5
+ export const joinRoomInputLabel = `join${room}InputLabel`;
6
+ export const joinRoomInputPlaceHolderText = `join${room}InputPlaceHolderText`;
7
+ export const joinRoomBtnText = `join${room}BtnText`;
8
+ export const joinRoomCreateBtnText = `join${room}CreateBtnText`;
9
+
10
+ export const joinRoomErrorToastHeading = `join${room}ErrorToastHeading`;
11
+ export const joinRoomErrorToastSubHeading = `join${room}ErrorToastSubHeading`;
2
12
 
3
13
  export interface I18nJoinScreenLabelsInterface {
4
- //commented for v1 release
5
- // meetingIdInputPlaceholder?: I18nBaseType; //
6
- // enterMeetingButton?: I18nBaseType; //
14
+ [joinRoomHeading]?: I18nBaseType;
15
+ [joinRoomInputLabel]?: I18nBaseType;
16
+ [joinRoomInputPlaceHolderText]?: I18nBaseType;
17
+ [joinRoomBtnText]?: I18nBaseType;
18
+ [joinRoomCreateBtnText]?: I18nBaseType;
19
+ [joinRoomErrorToastHeading]?: I18nBaseType;
20
+ [joinRoomErrorToastSubHeading]?: I18nBaseType;
7
21
  }
8
22
 
9
23
  export const JoinScreenLabels: I18nJoinScreenLabelsInterface = {
10
- //commented for v1 release
11
- // meetingIdInputPlaceholder: 'Enter Room ID',
12
- // enterMeetingButton: 'Enter Room',
24
+ [joinRoomHeading]: ({eventMode}) => {
25
+ if (eventMode) {
26
+ return 'Join a Room';
27
+ } else {
28
+ return 'Join a Stream';
29
+ }
30
+ },
31
+ [joinRoomInputLabel]: ({eventMode}) => {
32
+ if (eventMode) {
33
+ return 'Stream ID';
34
+ } else {
35
+ return 'Room ID';
36
+ }
37
+ },
38
+ [joinRoomInputPlaceHolderText]: ({eventMode}) => {
39
+ if (eventMode) {
40
+ return 'Enter Stream ID';
41
+ } else {
42
+ return 'Enter Room ID';
43
+ }
44
+ },
45
+ [joinRoomBtnText]: ({eventMode}) => (eventMode ? 'Join Stream' : 'Join Room'),
46
+ [joinRoomCreateBtnText]: ({eventMode}) =>
47
+ eventMode ? 'Create a Stream' : 'Create a Room',
48
+ [joinRoomErrorToastHeading]: ({eventMode}) =>
49
+ `${eventMode ? 'Stream' : 'Room'} ID Invalid.`,
50
+ [joinRoomErrorToastSubHeading]: ({eventMode}) =>
51
+ `Please enter a valid ${eventMode ? 'Stream' : 'Room'} ID`,
13
52
  };
@@ -1,33 +1,155 @@
1
1
  import {ClientRole} from '../../../agora-rn-uikit';
2
- import {I18nBaseType} from '../i18nTypes';
2
+ import {I18nBaseType, I18nConditionalType} from '../i18nTypes';
3
3
 
4
- export interface JoinRoomButtonTextInterface {
4
+ export interface PrecallJoinBtnTextInterface {
5
5
  ready: boolean;
6
6
  role?: ClientRole;
7
+ waitingRoom?: boolean;
7
8
  }
9
+
10
+ export const permissionPopupHeading = `permissionPopupHeading`;
11
+ export const permissionPopupSubHeading = `permissionPopupSubHeading`;
12
+ export const permissionPopupDismissBtnText = `permissionPopupDismissBtnText`;
13
+ export const permissionPopupErrorToastHeading = `permissionPopupErrorToastHeading`;
14
+ export const permissionPopupErrorToastSubHeading = `permissionPopupErrorToastSubHeading`;
15
+
16
+ export const settingsPanelHeading = `settingsPanelHeading`;
17
+ export const settingsPanelMicrophoneLabel = 'settingsPanelMicrophoneLabel';
18
+ export const settingsPanelNoMicrophoneDetectedText =
19
+ 'settingsPanelNoMicrophoneDetectedText';
20
+ export const settingsPanelNoMicrophoneSelectedText =
21
+ 'settingsPanelNoMicrophoneSelectedText';
22
+ export const settingsPanelCameraLabel = 'settingsPanelCameraLabel';
23
+ export const settingsPanelNoCameraDetectedText =
24
+ 'settingsPanelNoCameraDetectedText';
25
+ export const settingsPanelNoCameraSelectedText =
26
+ 'settingsPanelNoCameraSelectedText';
27
+ export const settingsPanelSpeakerLabel = 'settingsPanelSpeakerLabel';
28
+ export const settingsPanelNoSpeakerDetectedText =
29
+ 'settingsPanelNoSpeakerDetectedText';
30
+ export const settingsPanelNoSpeakerSelectedText =
31
+ 'settingsPanelNoSpeakerSelectedText';
32
+ export const settingsPanelSystemDefaultSpeakerText =
33
+ 'settingsPanelSystemDefaultSpeakerText';
34
+ export const settingsPanelLiveStreamingAttendeeInfo =
35
+ 'settingsPanelLiveStreamingAttendeeInfo';
36
+ export const settingsPanelUpdatingText = 'settingsPanelUpdatingText';
37
+
38
+ export const settingsPanelLanguageLabel = 'settingsPanelLanguageLabel';
39
+
40
+ export const precallYouAreJoiningAsHeading = 'precallYouAreJoiningAsHeading';
41
+ export const precallNameInputPlaceholderText =
42
+ 'precallNameInputPlaceholderText';
43
+ export const precallJoinBtnText = 'precallJoinBtnText';
44
+ export const precallInputGettingName = 'precallInputGettingName';
45
+
46
+ export const vbPanelHeading = 'vbPanelHeading';
47
+ export const vbPanelInfo = 'vbPanelInfo';
48
+ export const vbPanelOptionNoneText = 'vbPanelOptionNoneText';
49
+ export const vbPanelOptionBlurText = 'vbPanelOptionBlurText';
50
+ export const vbPanelOptionCustomText = 'vbPanelOptionCustomText';
51
+
8
52
  export interface I18nPrecallScreenLabelsInterface {
9
- //commented for v1 release
10
- // precallLabel?: I18nBaseType; //
11
- // selectInputDeviceLabel?: I18nBaseType; //
12
- // userNamePlaceholder?: I18nBaseType; //
13
- // fetchingNamePlaceholder?: I18nBaseType; //
14
- // loadingWithDots?: I18nBaseType;
15
- joinRoomButton?: I18nBaseType<JoinRoomButtonTextInterface>; // need to check
53
+ [permissionPopupHeading]?: I18nBaseType;
54
+ [permissionPopupSubHeading]?: I18nBaseType;
55
+ [permissionPopupDismissBtnText]?: I18nBaseType;
56
+ [permissionPopupErrorToastHeading]?: I18nBaseType;
57
+ [permissionPopupErrorToastSubHeading]?: I18nBaseType;
58
+
59
+ [settingsPanelHeading]?: I18nBaseType;
60
+
61
+ [settingsPanelCameraLabel]?: I18nBaseType;
62
+ [settingsPanelNoCameraDetectedText]?: I18nBaseType;
63
+ [settingsPanelNoCameraSelectedText]?: I18nBaseType;
64
+
65
+ [settingsPanelMicrophoneLabel]?: I18nBaseType;
66
+ [settingsPanelNoMicrophoneDetectedText]?: I18nBaseType;
67
+ [settingsPanelNoMicrophoneSelectedText]?: I18nBaseType;
68
+
69
+ [settingsPanelSpeakerLabel]?: I18nBaseType;
70
+ [settingsPanelNoSpeakerDetectedText]?: I18nBaseType;
71
+ [settingsPanelNoSpeakerSelectedText]?: I18nBaseType;
72
+ [settingsPanelSystemDefaultSpeakerText]?: I18nBaseType;
73
+
74
+ [settingsPanelLiveStreamingAttendeeInfo]?: I18nBaseType;
75
+ [settingsPanelUpdatingText]?: I18nBaseType;
76
+ [settingsPanelLanguageLabel]?: I18nBaseType;
77
+
78
+ [precallYouAreJoiningAsHeading]?: I18nBaseType;
79
+ [precallNameInputPlaceholderText]?: I18nBaseType;
80
+ [precallJoinBtnText]?: I18nBaseType<PrecallJoinBtnTextInterface>;
81
+
82
+ [vbPanelHeading]?: I18nBaseType;
83
+ [vbPanelInfo]?: I18nConditionalType;
84
+ [vbPanelOptionNoneText]?: I18nBaseType;
85
+ [vbPanelOptionBlurText]?: I18nBaseType;
86
+ [vbPanelOptionCustomText]?: I18nBaseType;
87
+
88
+ [precallInputGettingName]?: I18nBaseType;
16
89
  }
17
90
 
18
91
  export const PrecallScreenLabels: I18nPrecallScreenLabelsInterface = {
19
- //commented for v1 release
20
- // precallLabel: 'Precall',
21
- // selectInputDeviceLabel: 'Select Input Device',
22
- // userNamePlaceholder: 'Display name*',
23
- // fetchingNamePlaceholder: 'Getting name...',
24
- // loadingWithDots: 'Loading...',
25
- joinRoomButton: ({ready, role}) =>
26
- ready
27
- ? !role
28
- ? 'JOIN ROOM'
29
- : `JOIN ROOM AS ${
30
- role === ClientRole.Broadcaster ? 'HOST' : 'AUDIENCE'
31
- }`
32
- : `Loading...`,
92
+ //permission popup
93
+ [permissionPopupHeading]: ({audioRoom}) =>
94
+ audioRoom
95
+ ? 'Allow access to microphone'
96
+ : 'Allow access to camera and microphone',
97
+ [permissionPopupSubHeading]: ({audioRoom}) =>
98
+ audioRoom
99
+ ? 'Select “Allow” for others to hear you'
100
+ : 'Select “Allow” for others to see and hear you',
101
+ [permissionPopupDismissBtnText]: 'Dismiss',
102
+ [permissionPopupErrorToastHeading]: ({audioRoom}) =>
103
+ `Can't find your ${audioRoom ? ' Microphone' : ' Camera'}`,
104
+ [permissionPopupErrorToastSubHeading]: audioRoom =>
105
+ `Check your system settings to make sure that a ${
106
+ audioRoom ? 'microphone' : 'camera'
107
+ } is available. If not, plug one in and restart your browser`,
108
+
109
+ [settingsPanelHeading]: 'Settings',
110
+
111
+ [settingsPanelCameraLabel]: 'Camera',
112
+ [settingsPanelNoCameraDetectedText]: 'No Camera Detected',
113
+ [settingsPanelNoCameraSelectedText]: 'No Camera Selected',
114
+
115
+ [settingsPanelMicrophoneLabel]: 'Microphone',
116
+ [settingsPanelNoMicrophoneDetectedText]: 'No Microphone Detected',
117
+ [settingsPanelNoMicrophoneSelectedText]: 'No Microphone Selected',
118
+
119
+ [settingsPanelSpeakerLabel]: 'Speaker',
120
+ [settingsPanelNoSpeakerDetectedText]: 'No Speaker Detected',
121
+ [settingsPanelNoSpeakerSelectedText]: 'No Speaker Selected',
122
+ [settingsPanelSystemDefaultSpeakerText]: 'System Default Speaker Device',
123
+
124
+ [settingsPanelLiveStreamingAttendeeInfo]:
125
+ 'Attendees need to raise their hand to access the devices.',
126
+ [settingsPanelUpdatingText]: 'Updating',
127
+
128
+ [settingsPanelLanguageLabel]: 'Language',
129
+
130
+ [precallYouAreJoiningAsHeading]: 'You are joining',
131
+ [precallNameInputPlaceholderText]: 'Enter Your Name',
132
+ [precallInputGettingName]: 'Getting name...',
133
+ [precallJoinBtnText]: ({waitingRoom, ready, role}) => {
134
+ if (waitingRoom) {
135
+ return ready ? 'Ask To Join' : `Waiting for approval...`;
136
+ } else {
137
+ return ready
138
+ ? !role
139
+ ? 'JOIN ROOM'
140
+ : `JOIN ROOM AS ${
141
+ role === ClientRole.Broadcaster ? 'HOST' : 'AUDIENCE'
142
+ }`
143
+ : `Loading...`;
144
+ }
145
+ },
146
+
147
+ [vbPanelHeading]: 'Virtual Background',
148
+ [vbPanelInfo]: (isCamOn: boolean) =>
149
+ isCamOn
150
+ ? 'Camera is currently off. Selected background will be applied as soon as your camera turns on.'
151
+ : 'Your camera is switched off. Save a background to apply once it’s turned on.',
152
+ [vbPanelOptionNoneText]: 'None',
153
+ [vbPanelOptionBlurText]: 'Blur',
154
+ [vbPanelOptionCustomText]: 'Custom',
33
155
  };
@@ -1,44 +1,92 @@
1
1
  import {I18nBaseType} from '../i18nTypes';
2
+ import {room} from './createScreenLabels';
3
+ import {MeetingInviteInterface} from './videoCallScreenLabels';
2
4
 
5
+ export const shareRoomAttendeeLinkLabel = `share${room}AttendeeLinkLabel`;
6
+ export const shareRoomAttendeeLinkSubText = `share${room}AttendeeLinkSubText`;
7
+ export const shareRoomHostLinkLabel = `share${room}HostLinkLabel`;
8
+ export const shareRoomHostLinkSubText = `share${room}HostLinkSubText`;
9
+ export const shareRoomPSTNLabel = `share${room}PSTNLabel`;
10
+ export const shareRoomPSTNNumberLabel = `share${room}PSTNNumberLabel`;
11
+ export const shareRoomPSTNPinLabel = `share${room}PSTNPinLabel`;
12
+ export const shareRoomPSTNSubText = `share${room}PSTNSubText`;
13
+ export const shareRoomCopyBtnText = `share${room}CopyBtnText`;
14
+ export const shareRoomCopyBtnTooltipText = `share${room}CopyBtnTooltipText`;
15
+ export const shareRoomStartBtnText = `share${room}StartBtnText`;
16
+ export const shareRoomCopyInviteToClipboardContent = `share${room}CopyInviteToClipboardContent`;
3
17
  export interface I18nShareLinkScreenLabelsInterface {
4
- //commented for v1 release
5
- // attendeeUrlLabel?: I18nBaseType; //
6
- // hostUrlLabel?: I18nBaseType; //
7
- // enterMeetingAfterCreateButton?: I18nBaseType; //
8
- // copyInviteButton?: I18nBaseType; //
9
- // pstnLabel?: I18nBaseType; //
10
- // pstnNumberLabel?: I18nBaseType; //
11
- // meetingUrlLabel?: I18nBaseType; //
12
- // hostIdLabel?: I18nBaseType; //
13
- // meetingIdLabel?: I18nBaseType; //
14
- // attendeeIdLabel?: I18nBaseType; //
15
- // copiedToClipboardNotificationLabel?: I18nBaseType; //
16
- // PSTNNumber?: I18nBaseType;
17
- // PSTNPin?: I18nBaseType;
18
- // meeting?: I18nBaseType;
19
- // URLForAttendee?: I18nBaseType;
20
- // URLForHost?: I18nBaseType;
21
- // attendeeMeetingID?: I18nBaseType;
22
- // hostMeetingID?: I18nBaseType;
18
+ [shareRoomAttendeeLinkLabel]?: I18nBaseType;
19
+ [shareRoomAttendeeLinkSubText]?: I18nBaseType;
20
+ [shareRoomHostLinkLabel]?: I18nBaseType;
21
+ [shareRoomHostLinkSubText]?: I18nBaseType;
22
+ [shareRoomPSTNLabel]?: I18nBaseType;
23
+ [shareRoomPSTNNumberLabel]?: I18nBaseType;
24
+ [shareRoomPSTNPinLabel]?: I18nBaseType;
25
+ [shareRoomPSTNSubText]?: I18nBaseType;
26
+ [shareRoomCopyBtnText]?: I18nBaseType; // need to discuss
27
+ [shareRoomCopyBtnTooltipText]?: I18nBaseType; // need to discuss
28
+ [shareRoomStartBtnText]?: I18nBaseType;
29
+ [shareRoomCopyInviteToClipboardContent]?: I18nBaseType<MeetingInviteInterface>; //
23
30
  }
24
31
 
25
32
  export const ShareLinkScreenLabels: I18nShareLinkScreenLabelsInterface = {
26
- //commented for v1 release
27
- // attendeeUrlLabel: 'Attendee URL',
28
- // hostUrlLabel: 'Host URL',
29
- // enterMeetingAfterCreateButton: 'Start Room (as host)',
30
- // copyInviteButton: 'Copy invite to clipboard',
31
- // pstnLabel: 'PSTN',
32
- // pstnNumberLabel: 'Number',
33
- // meetingUrlLabel: 'Room URL',
34
- // hostIdLabel: 'Host ID',
35
- // meetingIdLabel: 'Room ID',
36
- // attendeeIdLabel: 'Attendee ID',
37
- // copiedToClipboardNotificationLabel: 'Copied to Clipboard',
38
- // PSTNNumber: 'PSTN Number',
39
- // PSTNPin: 'PSTN Pin',
40
- // URLForAttendee: 'URL for Attendee',
41
- // URLForHost: 'URL for Host',
42
- // attendeeMeetingID: 'Attendee Room ID',
43
- // hostMeetingID: 'Host Room ID',
33
+ [shareRoomAttendeeLinkLabel]: isWeb =>
34
+ isWeb ? 'Attendee Link' : 'Attendee ID',
35
+ [shareRoomAttendeeLinkSubText]:
36
+ 'Share this with attendees you want to invite.',
37
+ [shareRoomHostLinkLabel]: isWeb => (isWeb ? 'Host Link' : 'Host ID'),
38
+ [shareRoomHostLinkSubText]:
39
+ 'Share this with other co-hosts you want to invite.',
40
+ [shareRoomPSTNLabel]: 'PSTN',
41
+ [shareRoomPSTNNumberLabel]: 'Number',
42
+ [shareRoomPSTNPinLabel]: 'Pin',
43
+ [shareRoomPSTNSubText]: 'Share this phone number and pin to dial from phone.',
44
+
45
+ [shareRoomCopyBtnText]: 'Copy invite to clipboard',
46
+ [shareRoomCopyBtnTooltipText]: 'Copied to clipboard',
47
+ [shareRoomStartBtnText]: ({eventMode}) =>
48
+ eventMode ? 'Start Stream (as host)' : 'Start Room (as host)',
49
+
50
+ [shareRoomCopyInviteToClipboardContent]: ({
51
+ meetingName,
52
+ id,
53
+ url,
54
+ pstn,
55
+ isHost,
56
+ isSeparateHostLink,
57
+ }) => {
58
+ let inviteContent = '';
59
+ if (url) {
60
+ //for host
61
+ if (isHost) {
62
+ if (isSeparateHostLink) {
63
+ //seperate link for host and attendee
64
+ inviteContent += `Room: ${meetingName}\n\nAttendee Link:\n${url?.attendee}\n\nHost Link:\n${url?.host}`;
65
+ } else {
66
+ //single link for everyone
67
+ inviteContent += `Room: ${meetingName}\n\nMeeting Link:\n${url?.host}`;
68
+ }
69
+ }
70
+ //for attendee
71
+ else {
72
+ inviteContent += `Room: ${meetingName}\n\nAttendee Link:\n${url?.attendee}`;
73
+ }
74
+ } else {
75
+ if (isHost) {
76
+ if (isSeparateHostLink) {
77
+ inviteContent += `Room: ${meetingName}\n\nAttendee Room ID:\n${id?.attendee}\n\nHost Room ID:\n${id?.host}`;
78
+ } else {
79
+ inviteContent += `Room: ${meetingName}\n\nRoom ID:\n${id?.host}`;
80
+ }
81
+ } else {
82
+ //copy this label on videocall screen
83
+ inviteContent += `Room: ${meetingName}\n\nAttendee Room ID:\n${id?.attendee}`;
84
+ }
85
+ }
86
+ // Adding pstn data into meeting data if present
87
+ if (pstn?.number && pstn?.pin) {
88
+ inviteContent += `\n\nPSTN Number:\n${pstn.number}\n\nPSTN Pin:\n${pstn.pin}`;
89
+ }
90
+ return inviteContent;
91
+ },
44
92
  };