agora-appbuilder-core 3.0.10 → 3.0.12

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 (249) hide show
  1. package/Readme.md +0 -6
  2. package/package.json +2 -2
  3. package/template/_package-lock.json +4979 -7086
  4. package/template/agora-rn-uikit/src/Contexts/LocalUserContext.tsx +0 -4
  5. package/template/agora-rn-uikit/src/Contexts/PropsContext.tsx +0 -18
  6. package/template/agora-rn-uikit/src/Contexts/RtcContext.tsx +0 -2
  7. package/template/agora-rn-uikit/src/Controls/BtnTemplate.tsx +26 -30
  8. package/template/agora-rn-uikit/src/Controls/Icons.ts +83 -30
  9. package/template/agora-rn-uikit/src/Controls/ImageIcon.tsx +6 -6
  10. package/template/agora-rn-uikit/src/Reducer/LocalMuteAudio.ts +0 -1
  11. package/template/agora-rn-uikit/src/Reducer/LocalMuteVideo.ts +0 -1
  12. package/template/agora-rn-uikit/src/Reducer/RemoteAudioStateChanged.ts +0 -1
  13. package/template/agora-rn-uikit/src/Reducer/RemoteVideoStateChanged.ts +0 -1
  14. package/template/agora-rn-uikit/src/Reducer/UpdateDualStreamMode.ts +0 -1
  15. package/template/agora-rn-uikit/src/Reducer/UserJoined.ts +0 -2
  16. package/template/agora-rn-uikit/src/Reducer/UserMuteRemoteAudio.ts +0 -1
  17. package/template/agora-rn-uikit/src/Reducer/UserMuteRemoteVideo.ts +0 -1
  18. package/template/agora-rn-uikit/src/Reducer/UserOffline.ts +0 -1
  19. package/template/agora-rn-uikit/src/Reducer/index.ts +0 -3
  20. package/template/agora-rn-uikit/src/Rtc/Create.tsx +1 -89
  21. package/template/agora-rn-uikit/src/RtcConfigure.tsx +2 -39
  22. package/template/agora-rn-uikit/src/Views/MaxVideoView.native.tsx +5 -15
  23. package/template/agora-rn-uikit/src/Views/MaxVideoView.tsx +9 -15
  24. package/template/agora-rn-uikit/src/index.ts +1 -3
  25. package/template/android/app/build.gradle +0 -1
  26. package/template/android/app/src/main/AndroidManifest.xml +15 -22
  27. package/template/android/app/src/main/java/com/helloworld/MainActivity.java +0 -50
  28. package/template/android/build.gradle +3 -3
  29. package/template/babel.config.js +0 -1
  30. package/template/bridge/rtc/webNg/RtcEngine.ts +17 -110
  31. package/template/customization-api/sub-components.ts +1 -1
  32. package/template/customization-api/typeDefinition.ts +1 -2
  33. package/template/electron/index.html +27 -27
  34. package/template/electron/renderer/index.js +0 -1
  35. package/template/global.d.ts +4 -26
  36. package/template/index.js +0 -4
  37. package/template/index.rsdk.tsx +0 -1
  38. package/template/index.web.js +1 -7
  39. package/template/index.wsdk.tsx +1 -1
  40. package/template/ios/HelloWorld/Info.plist +1 -14
  41. package/template/ios/HelloWorld.xcodeproj/project.pbxproj +0 -17
  42. package/template/metro.config.js +1 -1
  43. package/template/package.json +7 -21
  44. package/template/react-native-toast-message/index.d.ts +43 -43
  45. package/template/react-native-toast-message/src/colors/index.js +2 -3
  46. package/template/react-native-toast-message/src/components/base/index.js +59 -46
  47. package/template/react-native-toast-message/src/components/base/styles.js +32 -16
  48. package/template/react-native-toast-message/src/components/error.js +2 -3
  49. package/template/react-native-toast-message/src/components/info.js +2 -3
  50. package/template/react-native-toast-message/src/components/success.js +2 -3
  51. package/template/react-native-toast-message/src/index.js +31 -122
  52. package/template/react-native-toast-message/src/index.sdk.tsx +35 -125
  53. package/template/react-native-toast-message/src/styles.js +4 -3
  54. package/template/react-native-toast-message/src/styles.sdk.ts +4 -3
  55. package/template/src/App.tsx +0 -6
  56. package/template/src/AppWrapper.tsx +28 -63
  57. package/template/src/assets/icons.ts +102 -0
  58. package/template/src/atoms/HorizontalRule.tsx +1 -3
  59. package/template/src/atoms/PrimaryButton.tsx +26 -51
  60. package/template/src/atoms/SecondaryButton.tsx +5 -8
  61. package/template/src/atoms/TextInput.tsx +14 -12
  62. package/template/src/components/Chat.tsx +214 -86
  63. package/template/src/components/ChatContext.ts +1 -8
  64. package/template/src/components/ColorConfigure.tsx +1 -1
  65. package/template/src/components/ColorContext.ts +1 -1
  66. package/template/src/components/{Controls1.native.tsx → Controls.native.tsx} +4 -6
  67. package/template/src/components/Controls.tsx +42 -342
  68. package/template/src/components/DeviceConfigure.tsx +101 -461
  69. package/template/src/components/DeviceContext.tsx +4 -8
  70. package/template/src/components/EventsConfigure.tsx +7 -144
  71. package/template/src/components/GraphQLProvider.tsx +1 -1
  72. package/template/src/components/GridVideo.tsx +44 -59
  73. package/template/src/components/HostControlView.tsx +35 -114
  74. package/template/src/components/Navbar.tsx +398 -216
  75. package/template/src/components/NetworkQualityContext.tsx +20 -20
  76. package/template/src/components/ParticipantsView.tsx +154 -177
  77. package/template/src/components/PinnedVideo.tsx +120 -207
  78. package/template/src/components/Precall.native.tsx +119 -358
  79. package/template/src/components/Precall.tsx +135 -269
  80. package/template/src/components/RTMConfigure.tsx +4 -27
  81. package/template/src/components/Router.electron.ts +0 -1
  82. package/template/src/components/Router.native.ts +0 -1
  83. package/template/src/components/Router.sdk.ts +0 -1
  84. package/template/src/components/Router.ts +0 -1
  85. package/template/src/components/Settings.tsx +95 -26
  86. package/template/src/components/SettingsView.tsx +56 -251
  87. package/template/src/components/Share.tsx +273 -302
  88. package/template/src/components/StorageContext.tsx +3 -30
  89. package/template/src/components/chat-messages/useChatMessages.tsx +23 -69
  90. package/template/src/components/chat-ui/useChatUIControl.tsx +0 -7
  91. package/template/src/components/common/Error.tsx +6 -20
  92. package/template/src/components/common/Logo.tsx +15 -16
  93. package/template/src/components/contexts/LiveStreamDataContext.tsx +5 -10
  94. package/template/src/components/contexts/VideoMeetingDataContext.tsx +7 -37
  95. package/template/src/components/livestream/LiveStreamContext.tsx +36 -270
  96. package/template/src/components/livestream/Types.ts +14 -39
  97. package/template/src/components/livestream/index.ts +0 -1
  98. package/template/src/components/livestream/views/LiveStreamControls.tsx +4 -12
  99. package/template/src/components/participants/AllAudienceParticipants.tsx +30 -101
  100. package/template/src/components/participants/AllHostParticipants.tsx +34 -103
  101. package/template/src/components/participants/MeParticipant.tsx +38 -0
  102. package/template/src/components/participants/ParticipantName.tsx +7 -13
  103. package/template/src/components/participants/ParticipantSectionTitle.tsx +10 -35
  104. package/template/src/components/participants/RemoteParticipants.tsx +71 -0
  105. package/template/src/components/participants/ScreenshareParticipants.tsx +12 -144
  106. package/template/src/components/precall/{LocalMute1.native.tsx → LocalMute.native.tsx} +5 -21
  107. package/template/src/components/precall/LocalMute.tsx +14 -84
  108. package/template/src/components/precall/VideoPreview.native.tsx +3 -48
  109. package/template/src/components/precall/VideoPreview.tsx +7 -163
  110. package/template/src/components/precall/joinCallBtn.tsx +2 -15
  111. package/template/src/components/precall/meetingTitle.tsx +12 -15
  112. package/template/src/components/precall/selectDevice.tsx +21 -1
  113. package/template/src/components/precall/textInput.tsx +4 -32
  114. package/template/src/components/precall/usePreCall.tsx +0 -16
  115. package/template/src/components/styles.ts +21 -42
  116. package/template/src/components/useShareLink.tsx +14 -12
  117. package/template/src/language/default-labels/precallScreenLabels.ts +3 -3
  118. package/template/src/pages/Authenticate.tsx +15 -5
  119. package/template/src/pages/Create.tsx +165 -293
  120. package/template/src/pages/Join.tsx +67 -93
  121. package/template/src/pages/VideoCall.tsx +64 -89
  122. package/template/src/pages/video-call/DefaultLayouts.ts +4 -4
  123. package/template/src/pages/video-call/NameWithMicIcon.tsx +44 -120
  124. package/template/src/pages/video-call/RenderComponent.tsx +2 -3
  125. package/template/src/pages/video-call/VideoCallScreen.tsx +9 -45
  126. package/template/src/pages/video-call/VideoComponent.tsx +3 -18
  127. package/template/src/pages/video-call/VideoRenderer.tsx +60 -218
  128. package/template/src/rtm-events/constants.ts +0 -2
  129. package/template/src/subComponents/ChatBubble.tsx +83 -123
  130. package/template/src/subComponents/ChatContainer.tsx +84 -257
  131. package/template/src/subComponents/ChatInput.tsx +46 -61
  132. package/template/src/subComponents/Checkbox.native.tsx +5 -16
  133. package/template/src/subComponents/Checkbox.tsx +2 -2
  134. package/template/src/subComponents/CopyJoinInfo.tsx +58 -36
  135. package/template/src/subComponents/FallbackLogo.tsx +40 -122
  136. package/template/src/subComponents/LanguageSelector.tsx +1 -1
  137. package/template/src/subComponents/{LayoutIconDropdown1.native.tsx → LayoutIconDropdown.native.tsx} +18 -4
  138. package/template/src/subComponents/LayoutIconDropdown.tsx +134 -131
  139. package/template/src/subComponents/LocalAudioMute.tsx +27 -119
  140. package/template/src/subComponents/LocalEndCall.tsx +33 -71
  141. package/template/src/subComponents/LocalSwitchCamera.tsx +30 -17
  142. package/template/src/subComponents/LocalVideoMute.tsx +27 -117
  143. package/template/src/subComponents/Logo.tsx +4 -3
  144. package/template/src/subComponents/LogoutButton.tsx +1 -1
  145. package/template/src/subComponents/NetworkQualityPill.tsx +63 -60
  146. package/template/src/subComponents/OpenInNativeButton.tsx +3 -3
  147. package/template/src/subComponents/Recording.tsx +29 -28
  148. package/template/src/subComponents/RemoteAudioMute.tsx +29 -83
  149. package/template/src/subComponents/RemoteEndCall.tsx +5 -8
  150. package/template/src/subComponents/RemoteVideoMute.tsx +21 -74
  151. package/template/src/subComponents/ScreenShareNotice.tsx +8 -83
  152. package/template/src/subComponents/SelectDevice.tsx +61 -404
  153. package/template/src/subComponents/SelectOAuth.tsx +8 -9
  154. package/template/src/subComponents/ToastConfig.tsx +10 -150
  155. package/template/src/subComponents/chat/ChatParticipants.tsx +78 -187
  156. package/template/src/subComponents/livestream/CurrentLiveStreamRequestsView.tsx +32 -95
  157. package/template/src/subComponents/livestream/controls/LocalRaiseHand.tsx +33 -29
  158. package/template/src/subComponents/livestream/controls/RemoteLiveStreamApprovedRequestRecall.tsx +6 -6
  159. package/template/src/subComponents/livestream/controls/RemoteLiveStreamRequestApprove.tsx +11 -24
  160. package/template/src/subComponents/livestream/controls/RemoteLiveStreamRequestReject.tsx +10 -17
  161. package/template/src/subComponents/recording/useRecording.tsx +27 -79
  162. package/template/src/subComponents/screenshare/ScreenshareButton.tsx +70 -52
  163. package/template/src/subComponents/screenshare/ScreenshareConfigure.native.tsx +2 -11
  164. package/template/src/subComponents/screenshare/ScreenshareConfigure.tsx +4 -26
  165. package/template/src/utils/common.tsx +1 -155
  166. package/template/src/utils/index.tsx +0 -19
  167. package/template/src/utils/isMobileOrTablet.ts +2 -7
  168. package/template/src/utils/useButtonTemplate.tsx +0 -1
  169. package/template/src/utils/useMuteToggleLocal.ts +3 -54
  170. package/template/web/index.html +0 -5
  171. package/template/webpack.commons.js +8 -13
  172. package/template/webpack.web.config.js +0 -1
  173. package/template/agora-rn-uikit/src/Reducer/ActiveSpeakerDetected.ts +0 -11
  174. package/template/agora-rn-uikit/src/Reducer/LocalPermissionState.ts +0 -24
  175. package/template/agora-rn-uikit/src/Reducer/UserPin.ts +0 -11
  176. package/template/android/app/src/main/assets/fonts/SourceSansPro-Regular.ttf +0 -0
  177. package/template/android/app/src/main/assets/fonts/icomoon.ttf +0 -0
  178. package/template/android/app/src/main/res/values/colors.xml +0 -7
  179. package/template/react-native-toast-message/src/components/checkbox.js +0 -178
  180. package/template/react-native.config.js +0 -7
  181. package/template/src/assets/font-styles.css +0 -329
  182. package/template/src/assets/fonts/SourceSansPro-Regular.ttf +0 -0
  183. package/template/src/assets/fonts/icomoon.ttf +0 -0
  184. package/template/src/assets/permission.png +0 -0
  185. package/template/src/assets/selection.json +0 -1
  186. package/template/src/atoms/ActionMenu.tsx +0 -236
  187. package/template/src/atoms/AnimatedActiveSpeaker.native.tsx +0 -71
  188. package/template/src/atoms/AnimatedActiveSpeaker.tsx +0 -84
  189. package/template/src/atoms/AnimatedRings.native.tsx +0 -68
  190. package/template/src/atoms/AnimatedRings.tsx +0 -70
  191. package/template/src/atoms/Card.tsx +0 -61
  192. package/template/src/atoms/CircularProgress.native.tsx +0 -121
  193. package/template/src/atoms/CircularProgress.tsx +0 -102
  194. package/template/src/atoms/CustomIcon.tsx +0 -88
  195. package/template/src/atoms/CustomSwitch.tsx +0 -287
  196. package/template/src/atoms/Dropdown.tsx +0 -306
  197. package/template/src/atoms/IconButton.tsx +0 -162
  198. package/template/src/atoms/ImageIcon.tsx +0 -98
  199. package/template/src/atoms/InfoBubble.tsx +0 -291
  200. package/template/src/atoms/Input.tsx +0 -87
  201. package/template/src/atoms/InviteInfo.tsx +0 -166
  202. package/template/src/atoms/LinkButton.tsx +0 -28
  203. package/template/src/atoms/OutlineButton.tsx +0 -61
  204. package/template/src/atoms/ParticipantsCount.tsx +0 -73
  205. package/template/src/atoms/Popup.tsx +0 -147
  206. package/template/src/atoms/RecordingInfo.tsx +0 -49
  207. package/template/src/atoms/Spacer.tsx +0 -22
  208. package/template/src/atoms/TertiaryButton.tsx +0 -78
  209. package/template/src/atoms/Toggle.tsx +0 -47
  210. package/template/src/atoms/Tooltip.native.tsx +0 -65
  211. package/template/src/atoms/Tooltip.tsx +0 -94
  212. package/template/src/atoms/UserAvatar.tsx +0 -60
  213. package/template/src/components/CommonStyles.ts +0 -44
  214. package/template/src/components/ToastComponent.tsx +0 -8
  215. package/template/src/components/participants/Participant.tsx +0 -302
  216. package/template/src/components/participants/UserActionMenuOptions.tsx +0 -398
  217. package/template/src/components/popups/InvitePopup.tsx +0 -115
  218. package/template/src/components/popups/StopRecordingPopup.tsx +0 -114
  219. package/template/src/components/precall/PermissionHelper.native.tsx +0 -5
  220. package/template/src/components/precall/PermissionHelper.tsx +0 -126
  221. package/template/src/components/precall/PreCallSettings.tsx +0 -52
  222. package/template/src/components/useToast.tsx +0 -41
  223. package/template/src/components/useVideoCall.tsx +0 -65
  224. package/template/src/pages/Endcall.tsx +0 -148
  225. package/template/src/pages/video-call/ActionSheet.native.tsx +0 -215
  226. package/template/src/pages/video-call/ActionSheet.tsx +0 -226
  227. package/template/src/pages/video-call/ActionSheetContent.tsx +0 -479
  228. package/template/src/pages/video-call/ActionSheetHandle.tsx +0 -38
  229. package/template/src/pages/video-call/ActionSheetStyles.css +0 -138
  230. package/template/src/pages/video-call/SidePanelHeader.tsx +0 -190
  231. package/template/src/pages/video-call/VideoCallMobileView.tsx +0 -139
  232. package/template/src/pages/video-call/VideoCallScreen.native.tsx +0 -37
  233. package/template/src/subComponents/ChatInput.ios.tsx +0 -237
  234. package/template/src/subComponents/EndcallPopup.tsx +0 -107
  235. package/template/src/subComponents/LayoutIconButton.tsx +0 -201
  236. package/template/src/subComponents/RemoteMutePopup.tsx +0 -193
  237. package/template/src/subComponents/RemoveMeetingPopup.tsx +0 -109
  238. package/template/src/subComponents/RemoveScreensharePopup.tsx +0 -109
  239. package/template/src/subComponents/SelectDeviceSettings.backup.tsx +0 -207
  240. package/template/src/subComponents/SidePanelHeader.tsx +0 -112
  241. package/template/src/theme/index.ts +0 -46
  242. package/template/src/utils/PlatformWrapper.tsx +0 -21
  243. package/template/src/utils/hexadecimalTransparency.ts +0 -108
  244. package/template/src/utils/pendingStateUpdateHelper.ts +0 -19
  245. package/template/src/utils/useFocus.tsx +0 -46
  246. package/template/src/utils/useIsActiveSpeaker.ts +0 -27
  247. package/template/src/utils/useIsHandRaised.ts +0 -13
  248. package/template/src/utils/useRemoteEndScreenshare.ts +0 -26
  249. package/template/src/utils/useRemoteRequest.ts +0 -84
@@ -1,20 +1,18 @@
1
1
  import React from 'react';
2
- import {Text, StyleSheet, View, TextStyle} from 'react-native';
3
- import {trimText} from '../../utils/common';
4
- import ThemeConfig from '../../theme';
2
+ import {Text, StyleSheet, View} from 'react-native';
5
3
  import {useMeetingInfo} from '../meeting-info/useMeetingInfo';
6
4
 
7
- export interface MeetingTitleProps {
8
- textStyle?: TextStyle;
9
- }
10
- const MeetingTitle = (props?: MeetingTitleProps) => {
5
+ const MeetingTitle: React.FC = () => {
11
6
  const {
12
7
  data: {meetingTitle},
13
8
  } = useMeetingInfo();
14
9
  return (
15
- <Text style={[style.titleHeading, props?.textStyle ? props.textStyle : {}]}>
16
- {trimText(meetingTitle)}
17
- </Text>
10
+ <>
11
+ <Text style={[style.titleHeading, {color: $config.PRIMARY_COLOR}]}>
12
+ {meetingTitle}
13
+ </Text>
14
+ <View style={{height: 50}} />
15
+ </>
18
16
  );
19
17
  };
20
18
 
@@ -22,10 +20,9 @@ export default MeetingTitle;
22
20
 
23
21
  const style = StyleSheet.create({
24
22
  titleHeading: {
25
- fontSize: ThemeConfig.FontSize.normal,
26
- lineHeight: ThemeConfig.FontSize.normal,
27
- fontWeight: '600',
28
- color: $config.FONT_COLOR,
29
- fontFamily: ThemeConfig.FontFamily.sansPro,
23
+ fontSize: 28,
24
+ fontWeight: '700',
25
+ textAlign: 'center',
26
+ color: $config.SECONDARY_FONT_COLOR,
30
27
  },
31
28
  });
@@ -20,7 +20,27 @@ const selectDevice: React.FC = () => {
20
20
  //commented for v1 release
21
21
  //const selectInputDeviceLabel = useString('selectInputDeviceLabel')();
22
22
  const selectInputDeviceLabel = 'Select Input Device';
23
- return <SelectDevice />;
23
+ return (
24
+ <>
25
+ <Text style={style.subHeading}>{selectInputDeviceLabel}</Text>
26
+ <View
27
+ style={{
28
+ flex: 1,
29
+ maxWidth: isWebInternal() ? '25vw' : 'auto',
30
+ marginVertical: 30,
31
+ }}>
32
+ <SelectDevice />
33
+ </View>
34
+ </>
35
+ );
24
36
  };
25
37
 
26
38
  export default selectDevice;
39
+
40
+ const style = StyleSheet.create({
41
+ subHeading: {
42
+ fontSize: 18,
43
+ fontWeight: '700',
44
+ color: $config.PRIMARY_FONT_COLOR,
45
+ },
46
+ });
@@ -11,57 +11,29 @@
11
11
  */
12
12
 
13
13
  import React from 'react';
14
- import {TextStyle} from 'react-native';
15
14
  import TextInput from '../../atoms/TextInput';
16
15
  import {useString} from '../../utils/useString';
17
16
  import {useMeetingInfo} from '../meeting-info/useMeetingInfo';
18
17
  import useSetName from '../../utils/useSetName';
19
18
  import useGetName from '../../utils/useGetName';
20
- import Input from '../../atoms/Input';
21
- import ThemeConfig from '../../theme';
22
- import {maxInputLimit} from '../../utils/common';
23
19
 
24
- export interface PreCallTextInputProps {
25
- labelStyle?: TextStyle;
26
- textInputStyle?: TextStyle;
27
- isDesktop?: boolean;
28
- }
29
- const PreCallTextInput: React.FC = (props?: PreCallTextInputProps) => {
20
+ const PreCallTextInput: React.FC = () => {
30
21
  //commented for v1 release
31
22
  // const userNamePlaceholder = useString('userNamePlaceholder')();
32
23
  // const fetchingNamePlaceholder = useString('fetchingNamePlaceholder')();
33
- const userNamePlaceholder = 'Enter Your Name';
24
+ const userNamePlaceholder = 'Display name*';
34
25
  const fetchingNamePlaceholder = 'Getting name...';
35
26
  const username = useGetName();
36
27
  const setUsername = useSetName();
37
28
  const {isJoinDataFetched} = useMeetingInfo();
38
- const {isDesktop = false} = props;
39
29
 
40
30
  return (
41
- <Input
42
- maxLength={maxInputLimit}
43
- label={isDesktop ? ($config.EVENT_MODE ? 'Your Name' : 'Joining as') : ''}
44
- labelStyle={
45
- props?.labelStyle
46
- ? props.labelStyle
47
- : {
48
- fontFamily: ThemeConfig.FontFamily.sansPro,
49
- fontWeight: '400',
50
- fontSize: ThemeConfig.FontSize.small,
51
- lineHeight: ThemeConfig.FontSize.small,
52
- color: $config.FONT_COLOR,
53
- }
54
- }
31
+ <TextInput
55
32
  value={username}
56
- autoFocus
57
33
  onChangeText={(text) => setUsername(text ? text : '')}
58
34
  onSubmitEditing={() => {}}
59
35
  placeholder={
60
- isJoinDataFetched
61
- ? $config.EVENT_MODE
62
- ? 'Luke Skywalker'
63
- : userNamePlaceholder
64
- : fetchingNamePlaceholder
36
+ isJoinDataFetched ? userNamePlaceholder : fetchingNamePlaceholder
65
37
  }
66
38
  editable={isJoinDataFetched}
67
39
  />
@@ -17,27 +17,11 @@ export interface PreCallContextInterface {
17
17
  callActive: boolean;
18
18
  setCallActive: React.Dispatch<React.SetStateAction<boolean>>;
19
19
  error?: ApolloError;
20
- isCameraAvailable?: boolean;
21
- setCameraAvailable: React.Dispatch<React.SetStateAction<boolean>>;
22
- isMicAvailable?: boolean;
23
- setMicAvailable: React.Dispatch<React.SetStateAction<boolean>>;
24
- isSpeakerAvailable?: boolean;
25
- setSpeakerAvailable: React.Dispatch<React.SetStateAction<boolean>>;
26
- isPermissionRequested: boolean;
27
- setIsPermissionRequested: React.Dispatch<React.SetStateAction<boolean>>;
28
20
  }
29
21
 
30
22
  const PreCallContext = createContext<PreCallContextInterface>({
31
23
  callActive: false,
32
24
  setCallActive: () => {},
33
- isCameraAvailable: false,
34
- isMicAvailable: false,
35
- isSpeakerAvailable: false,
36
- setCameraAvailable: () => {},
37
- setMicAvailable: () => {},
38
- setSpeakerAvailable: () => {},
39
- isPermissionRequested: false,
40
- setIsPermissionRequested: () => {},
41
25
  });
42
26
 
43
27
  interface PreCallProviderProps {
@@ -9,22 +9,19 @@
9
9
  information visit https://appbuilder.agora.io.
10
10
  *********************************************
11
11
  */
12
- import hexadecimalTransparency from '../utils/hexadecimalTransparency';
13
- import ThemeConfig from '../theme';
14
12
  import {isWebInternal} from '../utils/common';
15
13
 
16
14
  const styles = {
17
15
  temp: {
18
16
  width: '100%',
19
17
  height: '100%',
20
- borderRadius: 0,
21
- borderWidth: 0,
18
+ backgroundColor: $config.SECONDARY_FONT_COLOR,
19
+ borderRadius: 15,
22
20
  },
23
21
  bottomBar: {
24
22
  flex: isWebInternal() ? 1.3 : 1.6,
25
23
  paddingHorizontal: isWebInternal() ? '20%' : '1%',
26
- backgroundColor:
27
- $config.SECONDARY_ACTION_COLOR + hexadecimalTransparency['80%'],
24
+ backgroundColor: $config.SECONDARY_FONT_COLOR + 80,
28
25
  flexDirection: 'row',
29
26
  justifyContent: 'space-evenly',
30
27
  position: 'relative',
@@ -32,30 +29,21 @@ const styles = {
32
29
  bottom: 0,
33
30
  },
34
31
  localButton: {
32
+ backgroundColor: $config.SECONDARY_FONT_COLOR, //'#fff',
33
+ borderRadius: 23,
34
+ borderColor: $config.PRIMARY_COLOR,
35
+ borderWidth: 0,
36
+ width: 40,
37
+ height: 40,
38
+ padding: 3,
35
39
  display: 'flex',
36
40
  alignSelf: 'center',
37
41
  alignItems: 'center',
38
42
  justifyContent: 'center',
39
43
  },
40
- actionSheetButton: {
41
- width: 25,
42
- height: 25,
43
- },
44
- localButtonSmall: {
45
- display: 'flex',
46
- alignSelf: 'center',
47
- alignItems: 'center',
48
- justifyContent: 'center',
49
- },
50
- localButtonText: {
51
- fontFamily: 'Source Sans Pro',
52
- fontSize: 12,
53
- marginTop: 4,
54
- fontWeight: '400',
55
- },
56
44
  localButtonWithoutBG: {
57
45
  borderRadius: 23,
58
- borderColor: $config.PRIMARY_ACTION_BRAND_COLOR,
46
+ borderColor: $config.PRIMARY_COLOR,
59
47
  borderWidth: 0,
60
48
  width: 40,
61
49
  height: 40,
@@ -71,24 +59,15 @@ const styles = {
71
59
  resizeMode: 'contain',
72
60
  },
73
61
  endCall: {
74
- width: 20,
75
- height: 20,
76
- },
77
- endCallContainer: {
78
- flexDirection: 'row',
79
- justifyContent: 'center',
62
+ backgroundColor: $config.SECONDARY_FONT_COLOR, //'#fff',
63
+ borderRadius: 23,
64
+ borderColor: $config.PRIMARY_COLOR,
65
+ borderWidth: 0,
66
+ width: 40,
67
+ height: 40,
68
+ alignSelf: 'center',
80
69
  alignItems: 'center',
81
- paddingVertical: 8,
82
- paddingHorizontal: 16,
83
- backgroundColor: $config.SEMANTIC_ERROR,
84
- borderRadius: 8,
85
- },
86
- endCallText: {
87
- color: $config.PRIMARY_ACTION_TEXT_COLOR,
88
- fontFamily: ThemeConfig.FontFamily.sansPro,
89
- fontSize: 12,
90
- marginLeft: 8,
91
- fontWeight: '700',
70
+ justifyContent: 'center',
92
71
  },
93
72
  remoteButton: {
94
73
  width: 25,
@@ -101,7 +80,7 @@ const styles = {
101
80
  borderRightWidth: 0,
102
81
  borderLeftWidth: 0,
103
82
  marginHorizontal: 0,
104
- backgroundColor: $config.SECONDARY_ACTION_COLOR, //'#fff',
83
+ backgroundColor: $config.SECONDARY_FONT_COLOR, //'#fff',
105
84
  },
106
85
  liveStreamHostControlBtns: {
107
86
  width: 20,
@@ -114,7 +93,7 @@ const styles = {
114
93
  borderRightWidth: 0,
115
94
  borderLeftWidth: 0,
116
95
  marginHorizontal: 0,
117
- backgroundColor: $config.SECONDARY_ACTION_COLOR,
96
+ backgroundColor: $config.SECONDARY_FONT_COLOR,
118
97
  },
119
98
  minCloseBtn: {
120
99
  alignItems: 'center',
@@ -14,6 +14,7 @@ import {createHook} from 'customization-implementation';
14
14
  import React from 'react';
15
15
  import {useString} from '../utils/useString';
16
16
  import isSDKCheck from '../utils/isSDK';
17
+ import Toast from '../../react-native-toast-message';
17
18
  import {useMeetingInfo} from './meeting-info/useMeetingInfo';
18
19
  import platform from '../subComponents/Platform';
19
20
  import {MeetingInviteInterface} from '../language/default-labels/videoCallScreenLabels';
@@ -123,31 +124,31 @@ const ShareLinkProvider = (props: ShareLinkProvideProps) => {
123
124
  if (isHost) {
124
125
  if (isSeparateHostLink) {
125
126
  //seperate link for host and attendee
126
- inviteContent += `Meeting: ${meetingName}\n\nAttendee Link:\n${url?.attendee}\n\nHost Link:\n${url?.host}`;
127
+ inviteContent += `Meeting - ${meetingName}\nURL for Attendee: ${url?.attendee}\nURL for Host: ${url?.host}`;
127
128
  } else {
128
129
  //single link for everyone
129
- inviteContent += `Meeting: ${meetingName}\n\nMeeting Link:\n${url?.host}`;
130
+ inviteContent += `Meeting - ${meetingName}\nMeeting URL: ${url?.host}`;
130
131
  }
131
132
  }
132
133
  //for attendee
133
134
  else {
134
- inviteContent += `Meeting: ${meetingName}\n\nAttendee Link:\n${url?.attendee}`;
135
+ inviteContent += `Meeting - ${meetingName}\nURL for Attendee: ${url?.attendee}`;
135
136
  }
136
137
  } else {
137
138
  if (isHost) {
138
139
  if (isSeparateHostLink) {
139
- inviteContent += `Meeting: ${meetingName}\n\nAttendee Meeting ID:\n${id?.attendee}\n\nHost Meeting ID:\n${id?.host}`;
140
+ inviteContent += `Meeting - ${meetingName}\nAttendee Meeting ID: ${id?.attendee}\nHost Meeting ID: ${id?.host}`;
140
141
  } else {
141
- inviteContent += `Meeting: ${meetingName}\n\nMeeting ID:\n${id?.host}`;
142
+ inviteContent += `Meeting - ${meetingName}\nMeeting ID: ${id?.host}`;
142
143
  }
143
144
  } else {
144
145
  //copy this label on videocall screen
145
- inviteContent += `Meeting: ${meetingName}\n\nAttendee Meeting ID:\n${id?.attendee}`;
146
+ inviteContent += `Meeting - ${meetingName}\nAttendee Meeting ID: ${id?.attendee}`;
146
147
  }
147
148
  }
148
149
  // Adding pstn data into meeting data if present
149
150
  if (pstn?.number && pstn?.pin) {
150
- inviteContent += `\n\nPSTN Number:\n${pstn.number}\n\nPSTN Pin:\n${pstn.pin}`;
151
+ inviteContent += `\nPSTN Number: ${pstn.number}\nPSTN Pin: ${pstn.pin}`;
151
152
  }
152
153
  return inviteContent;
153
154
  };
@@ -239,10 +240,7 @@ const ShareLinkProvider = (props: ShareLinkProvideProps) => {
239
240
  return stringToCopy;
240
241
  };
241
242
 
242
- const copyShareLinkToClipboard = (
243
- input: SHARE_LINK_CONTENT_TYPE,
244
- callbackFn?: () => void,
245
- ) => {
243
+ const copyShareLinkToClipboard = (input: SHARE_LINK_CONTENT_TYPE) => {
246
244
  let stringToCopy = '';
247
245
  switch (input) {
248
246
  case SHARE_LINK_CONTENT_TYPE.MEETING_INVITE:
@@ -260,7 +258,11 @@ const ShareLinkProvider = (props: ShareLinkProvideProps) => {
260
258
  break;
261
259
  }
262
260
  Clipboard.setString(stringToCopy);
263
- callbackFn && callbackFn();
261
+ Toast.show({
262
+ type: 'success',
263
+ text1: copiedToClipboardText,
264
+ visibilityTime: 1000,
265
+ });
264
266
  };
265
267
 
266
268
  return (
@@ -25,9 +25,9 @@ export const PrecallScreenLabels: I18nPrecallScreenLabelsInterface = {
25
25
  joinRoomButton: ({ready, role}) =>
26
26
  ready
27
27
  ? !role
28
- ? 'JOIN MEETING'
29
- : `JOIN MEETING AS ${
30
- role === ClientRole.Broadcaster ? 'HOST' : 'AUDIENCE'
28
+ ? 'Join Room'
29
+ : `Join Room as ${
30
+ role === ClientRole.Broadcaster ? 'Host' : 'Audience'
31
31
  }`
32
32
  : `Loading...`,
33
33
  };
@@ -20,12 +20,21 @@ import {
20
20
  import Logo from '../subComponents/Logo';
21
21
  import OAuth from '../components/OAuth';
22
22
  import Illustration from '../subComponents/Illustration';
23
- import {useHasBrandLogo, useIsDesktop} from '../utils/common';
23
+ import {useHasBrandLogo} from '../utils/common';
24
+ import DimensionContext from '../components/dimension/DimensionContext';
24
25
  import {useString} from '../utils/useString';
25
26
 
26
27
  const Authenticate = () => {
27
28
  const hasBrandLogo = useHasBrandLogo();
28
- const isDesktop = useIsDesktop();
29
+ const {getDimensionData} = useContext(DimensionContext);
30
+ const [isDesktop, setIsDesktop] = useState(false);
31
+ let onLayout = (e: LayoutChangeEvent) => {
32
+ const {isDesktop} = getDimensionData(
33
+ e.nativeEvent.layout.width,
34
+ e.nativeEvent.layout.height,
35
+ );
36
+ setIsDesktop(isDesktop);
37
+ };
29
38
  //commented for v1 release
30
39
  // const oauthLoginLabel = useString('oauthLoginLabel')();
31
40
  // const oauthProviderLabel = useString('oauthProviderLabel')();
@@ -33,6 +42,7 @@ const Authenticate = () => {
33
42
  const oauthProviderLabel = 'Please select an OAuth provider to login.';
34
43
  return (
35
44
  <ImageBackground
45
+ onLayout={onLayout}
36
46
  source={{uri: $config.BG}}
37
47
  style={style.full}
38
48
  resizeMode={'cover'}>
@@ -44,7 +54,7 @@ const Authenticate = () => {
44
54
  <Text style={style.headline}>{oauthProviderLabel}</Text>
45
55
  <OAuth />
46
56
  </View>
47
- {isDesktop() ? (
57
+ {isDesktop ? (
48
58
  <View style={style.full}>
49
59
  <Illustration />
50
60
  </View>
@@ -83,14 +93,14 @@ const style = StyleSheet.create({
83
93
  heading: {
84
94
  fontSize: 40,
85
95
  fontWeight: '700',
86
- color: $config.FONT_COLOR,
96
+ color: $config.PRIMARY_FONT_COLOR,
87
97
  marginBottom: 20,
88
98
  },
89
99
  headline: {
90
100
  fontSize: 20,
91
101
  letterSpacing: 2,
92
102
  fontWeight: '400',
93
- color: $config.FONT_COLOR,
103
+ color: $config.PRIMARY_FONT_COLOR,
94
104
  marginTop: -50,
95
105
  marginBottom: 20,
96
106
  },