agora-appbuilder-core 1.0.8 → 2.0.1
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.
- package/package.json +5 -2
- package/template/_package-lock.json +22850 -0
- package/template/agora-rn-uikit/.git/HEAD +1 -0
- package/template/agora-rn-uikit/.git/config +16 -0
- package/template/agora-rn-uikit/.git/description +1 -0
- package/template/agora-rn-uikit/.git/hooks/applypatch-msg.sample +15 -0
- package/template/agora-rn-uikit/.git/hooks/commit-msg.sample +24 -0
- package/template/agora-rn-uikit/.git/hooks/fsmonitor-watchman.sample +173 -0
- package/template/agora-rn-uikit/.git/hooks/post-update.sample +8 -0
- package/template/agora-rn-uikit/.git/hooks/pre-applypatch.sample +14 -0
- package/template/agora-rn-uikit/.git/hooks/pre-commit.sample +49 -0
- package/template/agora-rn-uikit/.git/hooks/pre-merge-commit.sample +13 -0
- package/template/agora-rn-uikit/.git/hooks/pre-push.sample +53 -0
- package/template/agora-rn-uikit/.git/hooks/pre-rebase.sample +169 -0
- package/template/agora-rn-uikit/.git/hooks/pre-receive.sample +24 -0
- package/template/agora-rn-uikit/.git/hooks/prepare-commit-msg.sample +42 -0
- package/template/agora-rn-uikit/.git/hooks/push-to-checkout.sample +78 -0
- package/template/agora-rn-uikit/.git/hooks/update.sample +128 -0
- package/template/agora-rn-uikit/.git/index +0 -0
- package/template/agora-rn-uikit/.git/info/exclude +6 -0
- package/template/agora-rn-uikit/.git/logs/HEAD +2 -0
- package/template/agora-rn-uikit/.git/logs/refs/heads/ab-dev-auto +1 -0
- package/template/agora-rn-uikit/.git/logs/refs/heads/master +1 -0
- package/template/agora-rn-uikit/.git/logs/refs/remotes/origin/HEAD +1 -0
- package/template/agora-rn-uikit/.git/objects/pack/pack-f379286d0537eb68377220b4929979324b8d5d1c.idx +0 -0
- package/template/agora-rn-uikit/.git/objects/pack/pack-f379286d0537eb68377220b4929979324b8d5d1c.pack +0 -0
- package/template/agora-rn-uikit/.git/packed-refs +12 -0
- package/template/agora-rn-uikit/.git/refs/heads/ab-dev-auto +1 -0
- package/template/agora-rn-uikit/.git/refs/heads/master +1 -0
- package/template/agora-rn-uikit/.git/refs/remotes/origin/HEAD +1 -0
- package/template/agora-rn-uikit/.gitignore +63 -0
- package/template/agora-rn-uikit/package-lock.json +7612 -0
- package/template/agora-rn-uikit/package.json +1 -0
- package/template/agora-rn-uikit/src/AgoraUIKit.tsx +8 -8
- package/template/agora-rn-uikit/src/{LocalUserContext.tsx → Contexts/LocalUserContext.tsx} +1 -1
- package/template/agora-rn-uikit/src/{MaxUidContext.tsx → Contexts/MaxUidContext.tsx} +0 -0
- package/template/agora-rn-uikit/src/{MinUidContext.tsx → Contexts/MinUidContext.tsx} +0 -0
- package/template/agora-rn-uikit/src/{PropsContext.tsx → Contexts/PropsContext.tsx} +34 -16
- package/template/agora-rn-uikit/src/{RtcContext.tsx → Contexts/RtcContext.tsx} +12 -21
- package/template/agora-rn-uikit/src/Controls/BtnTemplate.tsx +25 -15
- package/template/agora-rn-uikit/src/Controls/Icons.ts +53 -3
- package/template/agora-rn-uikit/src/Controls/ImageIcon.tsx +53 -0
- package/template/agora-rn-uikit/src/Controls/Local/EndCall.tsx +4 -3
- package/template/agora-rn-uikit/src/Controls/Local/FullScreen.tsx +3 -3
- package/template/agora-rn-uikit/src/Controls/Local/LocalAudioMute.tsx +58 -14
- package/template/agora-rn-uikit/src/Controls/Local/LocalVideoMute.tsx +60 -14
- package/template/agora-rn-uikit/src/Controls/Local/Recording.tsx +2 -2
- package/template/agora-rn-uikit/src/Controls/Local/Screenshare.tsx +2 -2
- package/template/agora-rn-uikit/src/Controls/Local/SwitchCamera.tsx +9 -9
- package/template/agora-rn-uikit/src/Controls/LocalControls.tsx +20 -17
- package/template/agora-rn-uikit/src/Controls/Remote/RemoteAudioMute.tsx +8 -8
- package/template/agora-rn-uikit/src/Controls/Remote/RemoteSwap.tsx +3 -3
- package/template/agora-rn-uikit/src/Controls/Remote/RemoteVideoMute.tsx +13 -8
- package/template/agora-rn-uikit/src/Controls/RemoteControls.tsx +1 -2
- package/template/agora-rn-uikit/src/Reducer/LocalMuteAudio.ts +20 -0
- package/template/agora-rn-uikit/src/Reducer/LocalMuteVideo.ts +20 -0
- package/template/agora-rn-uikit/src/Reducer/RemoteAudioStateChanged.ts +26 -0
- package/template/agora-rn-uikit/src/Reducer/RemoteVideoStateChanged.ts +26 -0
- package/template/agora-rn-uikit/src/Reducer/UpdateDualStreamMode.ts +46 -0
- package/template/agora-rn-uikit/src/Reducer/UserJoined.ts +47 -0
- package/template/agora-rn-uikit/src/Reducer/UserMuteRemoteAudio.ts +20 -0
- package/template/agora-rn-uikit/src/Reducer/UserMuteRemoteVideo.ts +20 -0
- package/template/agora-rn-uikit/src/Reducer/UserOffline.ts +21 -0
- package/template/agora-rn-uikit/src/Reducer/index.ts +9 -0
- package/template/agora-rn-uikit/src/Rtc/Create.tsx +138 -0
- package/template/agora-rn-uikit/src/Rtc/Join.tsx +100 -0
- package/template/agora-rn-uikit/src/RtcConfigure.tsx +197 -0
- package/template/agora-rn-uikit/src/Style.ts +3 -3
- package/template/agora-rn-uikit/src/Utils/actionTypeGuard.tsx +9 -0
- package/template/agora-rn-uikit/src/{events.ts → Utils/events.ts} +0 -0
- package/template/agora-rn-uikit/src/{permission.ts → Utils/permission.ts} +0 -0
- package/template/agora-rn-uikit/src/{quality.tsx → Utils/quality.tsx} +0 -0
- package/template/agora-rn-uikit/src/{MaxVideoView.native.tsx → Views/MaxVideoView.native.tsx} +3 -4
- package/template/agora-rn-uikit/src/{MaxVideoView.tsx → Views/MaxVideoView.tsx} +3 -4
- package/template/agora-rn-uikit/src/Views/MinVideoView.tsx +86 -0
- package/template/agora-rn-uikit/src/index.ts +67 -0
- package/template/bridge/rtc/webNg/RtcEngine.ts +23 -6
- package/template/package-lock.json +22850 -0
- package/template/package.json +6 -4
- package/template/react-native-toast-message/.gitignore +5 -0
- package/template/react-native-toast-message/.npmignore +5 -0
- package/template/react-native-toast-message/package-lock.json +10553 -0
- package/template/src/.DS_Store +0 -0
- package/template/src/assets/icons.ts +35 -6
- package/template/src/atoms/SecondaryButton.tsx +6 -5
- package/template/src/atoms/TextInput.tsx +6 -1
- package/template/src/components/Chat.tsx +50 -21
- package/template/src/components/ChatContext.ts +22 -1
- package/template/src/components/Controls.native.tsx +2 -2
- package/template/src/components/Controls.tsx +2 -2
- package/template/src/components/DeviceConfigure.tsx +1 -1
- package/template/src/components/GridVideo.tsx +69 -31
- package/template/src/components/Navbar.tsx +136 -113
- package/template/src/components/NetworkQualityContext.tsx +134 -0
- package/template/src/components/ParticipantsView.tsx +105 -49
- package/template/src/components/PinnedVideo.tsx +112 -71
- package/template/src/components/Precall.native.tsx +42 -23
- package/template/src/components/Precall.tsx +56 -51
- package/template/src/components/RTMConfigure.tsx +331 -181
- package/template/src/components/RTMEvents.tsx +84 -0
- package/template/src/components/Settings.tsx +19 -16
- package/template/src/components/Share.tsx +131 -62
- package/template/src/components/StorageContext.tsx +2 -0
- package/template/src/hooks/useImageDelay.tsx +28 -0
- package/template/src/pages/Authenticate.tsx +5 -4
- package/template/src/pages/Create.tsx +26 -16
- package/template/src/pages/Join.tsx +13 -30
- package/template/src/pages/VideoCall.tsx +181 -137
- package/template/src/subComponents/.DS_Store +0 -0
- package/template/src/subComponents/ChatContainer.tsx +40 -28
- package/template/src/subComponents/CopyJoinInfo.tsx +9 -12
- package/template/src/subComponents/LocalAudioMute.tsx +9 -9
- package/template/src/subComponents/LocalVideoMute.tsx +9 -9
- package/template/src/subComponents/LogoutButton.tsx +1 -1
- package/template/src/subComponents/NetworkQualityPill.tsx +161 -0
- package/template/src/subComponents/Recording.tsx +12 -16
- package/template/src/subComponents/RemoteAudioMute.tsx +23 -27
- package/template/src/subComponents/RemoteEndCall.tsx +7 -15
- package/template/src/subComponents/RemoteVideoMute.tsx +15 -28
- package/template/src/subComponents/ScreenShareNotice.tsx +61 -0
- package/template/src/subComponents/ScreenshareButton.tsx +76 -75
- package/template/src/subComponents/SelectOAuth.tsx +25 -12
- package/template/src/subComponents/SwitchCamera.tsx +5 -2
- package/template/src/subComponents/TextWithTooltip.native.tsx +128 -0
- package/template/src/subComponents/TextWithTooltip.tsx +44 -0
- package/template/src/subComponents/toastConfig.tsx +2 -2
- package/template/src/utils/hasBrandLogo.tsx +3 -0
- package/template/src/utils/isSafariBrowser.tsx +22 -0
- package/template/webpack.commons.js +1 -0
- package/template/agora-rn-uikit/Components.js +0 -35
- package/template/agora-rn-uikit/Contexts.js +0 -7
- package/template/agora-rn-uikit/index.js +0 -12
- package/template/agora-rn-uikit/src/MinVideoView.tsx +0 -87
- package/template/agora-rn-uikit/src/RTCConfigure.tsx +0 -516
|
@@ -18,15 +18,15 @@ import {
|
|
|
18
18
|
ImageBackground,
|
|
19
19
|
Platform,
|
|
20
20
|
} from 'react-native';
|
|
21
|
-
import MaxUidContext from '../../agora-rn-uikit
|
|
22
|
-
import {MaxVideoView} from '../../agora-rn-uikit
|
|
21
|
+
import {MaxUidContext} from '../../agora-rn-uikit';
|
|
22
|
+
import {MaxVideoView} from '../../agora-rn-uikit';
|
|
23
23
|
import {
|
|
24
24
|
LocalAudioMute,
|
|
25
25
|
LocalVideoMute,
|
|
26
26
|
SwitchCamera,
|
|
27
|
-
} from '../../agora-rn-uikit
|
|
28
|
-
import LocalUserContext from '../../agora-rn-uikit
|
|
29
|
-
import RtcContext from '../../agora-rn-uikit
|
|
27
|
+
} from '../../agora-rn-uikit';
|
|
28
|
+
import {LocalUserContext} from '../../agora-rn-uikit';
|
|
29
|
+
import {RtcContext} from '../../agora-rn-uikit';
|
|
30
30
|
// import ColorContext from './ColorContext';
|
|
31
31
|
import TextInput from '../atoms/TextInput';
|
|
32
32
|
import Error from '../subComponents/Error';
|
|
@@ -46,24 +46,29 @@ const Precall = (props: any) => {
|
|
|
46
46
|
<View style={style.heading}>
|
|
47
47
|
<Text style={style.headingText}>Precall </Text>
|
|
48
48
|
</View>
|
|
49
|
-
<View
|
|
49
|
+
<View
|
|
50
|
+
style={{
|
|
51
|
+
zIndex: 50,
|
|
52
|
+
position: 'absolute',
|
|
53
|
+
width: '100%',
|
|
54
|
+
left: '18%',
|
|
55
|
+
top: 10,
|
|
56
|
+
alignSelf: 'center',
|
|
57
|
+
}}>
|
|
50
58
|
{error ? <Error error={error} showBack={true} /> : <></>}
|
|
51
59
|
</View>
|
|
52
60
|
<View style={style.full}>
|
|
53
61
|
<MaxVideoView user={maxUsers[0]} key={maxUsers[0].uid} />
|
|
54
62
|
</View>
|
|
55
63
|
{Platform.OS === 'ios' ? (
|
|
56
|
-
<View
|
|
57
|
-
style={style.textInputHolder}>
|
|
64
|
+
<View style={style.textInputHolder}>
|
|
58
65
|
<TextInput
|
|
59
66
|
value={username}
|
|
60
67
|
onChangeText={(text) => {
|
|
61
|
-
|
|
62
|
-
setUsername(text);
|
|
63
|
-
}
|
|
68
|
+
setUsername(text);
|
|
64
69
|
}}
|
|
65
70
|
onSubmitEditing={() => {}}
|
|
66
|
-
placeholder=
|
|
71
|
+
placeholder={queryComplete ? 'Display name*' : 'Getting name...'}
|
|
67
72
|
/>
|
|
68
73
|
</View>
|
|
69
74
|
) : (
|
|
@@ -71,23 +76,28 @@ const Precall = (props: any) => {
|
|
|
71
76
|
<TextInput
|
|
72
77
|
value={username}
|
|
73
78
|
onChangeText={(text) => {
|
|
74
|
-
|
|
75
|
-
setUsername(text);
|
|
76
|
-
}
|
|
79
|
+
setUsername(text);
|
|
77
80
|
}}
|
|
78
81
|
onSubmitEditing={() => {}}
|
|
79
|
-
placeholder=
|
|
82
|
+
placeholder={queryComplete ? 'Display name*' : 'Getting name...'}
|
|
83
|
+
editable={queryComplete}
|
|
80
84
|
/>
|
|
81
85
|
</View>
|
|
82
86
|
)}
|
|
83
87
|
<View style={{height: 20}} />
|
|
84
88
|
<View style={style.controls}>
|
|
85
89
|
<LocalUserContext>
|
|
86
|
-
<
|
|
90
|
+
<View style={style.width50}>
|
|
91
|
+
<LocalVideoMute />
|
|
92
|
+
</View>
|
|
87
93
|
<View style={style.width50} />
|
|
88
|
-
<
|
|
94
|
+
<View style={style.width50}>
|
|
95
|
+
<LocalAudioMute />
|
|
96
|
+
</View>
|
|
89
97
|
<View style={style.width50} />
|
|
90
|
-
<
|
|
98
|
+
<View style={style.width50}>
|
|
99
|
+
<SwitchCamera />
|
|
100
|
+
</View>
|
|
91
101
|
</LocalUserContext>
|
|
92
102
|
</View>
|
|
93
103
|
<View
|
|
@@ -95,10 +105,14 @@ const Precall = (props: any) => {
|
|
|
95
105
|
// disabled={!queryComplete}
|
|
96
106
|
style={{marginBottom: 50}}>
|
|
97
107
|
{/* <Text style={style.buttonText}> */}
|
|
98
|
-
|
|
108
|
+
{/* {queryComplete ? 'Join Room' : 'Loading...'} */}
|
|
99
109
|
{/* </Text> */}
|
|
100
|
-
|
|
101
|
-
|
|
110
|
+
{/* </TouchableOpacity> */}
|
|
111
|
+
<PrimaryButton
|
|
112
|
+
text={'Join Room'}
|
|
113
|
+
disabled={!queryComplete || username.trim() === ''}
|
|
114
|
+
onPress={() => setCallActive(true)}
|
|
115
|
+
/>
|
|
102
116
|
</View>
|
|
103
117
|
{/* </ImageBackground> */}
|
|
104
118
|
</View>
|
|
@@ -132,7 +146,12 @@ const style = StyleSheet.create({
|
|
|
132
146
|
minHeight: 45,
|
|
133
147
|
alignSelf: 'center',
|
|
134
148
|
},
|
|
135
|
-
controls: {
|
|
149
|
+
controls: {
|
|
150
|
+
flex: 0.2,
|
|
151
|
+
flexDirection: 'row',
|
|
152
|
+
alignSelf: 'center',
|
|
153
|
+
padding: 5,
|
|
154
|
+
},
|
|
136
155
|
width50: {width: 50},
|
|
137
156
|
buttonActive: {
|
|
138
157
|
backgroundColor: $config.PRIMARY_COLOR,
|
|
@@ -1,48 +1,54 @@
|
|
|
1
1
|
/*
|
|
2
2
|
********************************************
|
|
3
3
|
Copyright © 2021 Agora Lab, Inc., all rights reserved.
|
|
4
|
-
AppBuilder and all associated components, source code, APIs, services, and documentation
|
|
5
|
-
(the “Materials”) are owned by Agora Lab, Inc. and its licensors. The Materials may not be
|
|
6
|
-
accessed, used, modified, or distributed for any purpose without a license from Agora Lab, Inc.
|
|
7
|
-
Use without a license or in violation of any license terms and conditions (including use for
|
|
8
|
-
any purpose competitive to Agora Lab, Inc.’s business) is strictly prohibited. For more
|
|
9
|
-
information visit https://appbuilder.agora.io.
|
|
4
|
+
AppBuilder and all associated components, source code, APIs, services, and documentation
|
|
5
|
+
(the “Materials”) are owned by Agora Lab, Inc. and its licensors. The Materials may not be
|
|
6
|
+
accessed, used, modified, or distributed for any purpose without a license from Agora Lab, Inc.
|
|
7
|
+
Use without a license or in violation of any license terms and conditions (including use for
|
|
8
|
+
any purpose competitive to Agora Lab, Inc.’s business) is strictly prohibited. For more
|
|
9
|
+
information visit https://appbuilder.agora.io.
|
|
10
10
|
*********************************************
|
|
11
11
|
*/
|
|
12
|
-
import React, {useState, useContext} from 'react';
|
|
13
|
-
import {
|
|
14
|
-
View,
|
|
15
|
-
Text,
|
|
16
|
-
StyleSheet,
|
|
17
|
-
Dimensions,
|
|
18
|
-
Platform,
|
|
19
|
-
} from 'react-native';
|
|
12
|
+
import React, {useState, useContext, useEffect} from 'react';
|
|
13
|
+
import {View, Text, StyleSheet, Dimensions, Platform} from 'react-native';
|
|
20
14
|
import TextInput from '../atoms/TextInput';
|
|
21
15
|
import PrimaryButton from '../atoms/PrimaryButton';
|
|
22
|
-
|
|
23
|
-
import {
|
|
24
|
-
|
|
25
|
-
|
|
16
|
+
|
|
17
|
+
import {
|
|
18
|
+
MaxUidConsumer,
|
|
19
|
+
MaxVideoView,
|
|
20
|
+
LocalAudioMute,
|
|
21
|
+
LocalVideoMute,
|
|
22
|
+
LocalUserContext,
|
|
23
|
+
} from '../../agora-rn-uikit';
|
|
24
|
+
|
|
26
25
|
import SelectDevice from '../subComponents/SelectDevice';
|
|
27
26
|
import Logo from '../subComponents/Logo';
|
|
28
|
-
|
|
27
|
+
import hasBrandLogo from '../utils/hasBrandLogo';
|
|
29
28
|
import ColorContext from './ColorContext';
|
|
30
|
-
// import {useHistory} from './Router';
|
|
31
|
-
// import {precallCard} from '../../theme.json';
|
|
32
29
|
import Error from '../subComponents/Error';
|
|
33
30
|
|
|
34
31
|
const Precall = (props: any) => {
|
|
35
32
|
const {primaryColor} = useContext(ColorContext);
|
|
36
|
-
const {setCallActive, queryComplete, username, setUsername, error} = props;
|
|
33
|
+
const {setCallActive, queryComplete, username, setUsername, error, title} = props;
|
|
37
34
|
const [dim, setDim] = useState([
|
|
38
35
|
Dimensions.get('window').width,
|
|
39
36
|
Dimensions.get('window').height,
|
|
40
37
|
Dimensions.get('window').width > Dimensions.get('window').height,
|
|
41
38
|
]);
|
|
39
|
+
|
|
42
40
|
let onLayout = (e: any) => {
|
|
43
41
|
setDim([e.nativeEvent.layout.width, e.nativeEvent.layout.height]);
|
|
44
42
|
};
|
|
45
43
|
|
|
44
|
+
useEffect(()=>{
|
|
45
|
+
if(Platform.OS === 'web'){
|
|
46
|
+
if(title){
|
|
47
|
+
document.title = title + ' | ' + $config.APP_NAME
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
})
|
|
51
|
+
|
|
46
52
|
return (
|
|
47
53
|
// <ImageBackground
|
|
48
54
|
// onLayout={onLayout}
|
|
@@ -50,7 +56,7 @@ const Precall = (props: any) => {
|
|
|
50
56
|
// resizeMode={'cover'}>
|
|
51
57
|
<View style={style.main} onLayout={onLayout}>
|
|
52
58
|
<View style={style.nav}>
|
|
53
|
-
<Logo />
|
|
59
|
+
{hasBrandLogo && <Logo />}
|
|
54
60
|
{error ? <Error error={error} showBack={true} /> : <></>}
|
|
55
61
|
{/* <OpenInNativeButton /> */}
|
|
56
62
|
</View>
|
|
@@ -67,25 +73,9 @@ const Precall = (props: any) => {
|
|
|
67
73
|
<LocalUserContext>
|
|
68
74
|
<View style={{alignSelf: 'center'}}>
|
|
69
75
|
<LocalVideoMute />
|
|
70
|
-
{/* <Text
|
|
71
|
-
style={{
|
|
72
|
-
textAlign: 'center',
|
|
73
|
-
marginTop: 5,
|
|
74
|
-
color: $config.PRIMARY_COLOR,
|
|
75
|
-
}}>
|
|
76
|
-
Video
|
|
77
|
-
</Text> */}
|
|
78
76
|
</View>
|
|
79
77
|
<View style={{alignSelf: 'center'}}>
|
|
80
78
|
<LocalAudioMute />
|
|
81
|
-
{/* <Text
|
|
82
|
-
style={{
|
|
83
|
-
textAlign: 'center',
|
|
84
|
-
marginTop: 5,
|
|
85
|
-
color: $config.PRIMARY_COLOR,
|
|
86
|
-
}}>
|
|
87
|
-
Audio
|
|
88
|
-
</Text> */}
|
|
89
79
|
</View>
|
|
90
80
|
</LocalUserContext>
|
|
91
81
|
</View>
|
|
@@ -94,17 +84,18 @@ const Precall = (props: any) => {
|
|
|
94
84
|
<TextInput
|
|
95
85
|
value={username}
|
|
96
86
|
onChangeText={(text) => {
|
|
97
|
-
|
|
98
|
-
setUsername(text);
|
|
99
|
-
}
|
|
87
|
+
setUsername(text);
|
|
100
88
|
}}
|
|
101
89
|
onSubmitEditing={() => {}}
|
|
102
|
-
placeholder=
|
|
90
|
+
placeholder={
|
|
91
|
+
queryComplete ? 'Display name*' : 'Getting name...'
|
|
92
|
+
}
|
|
93
|
+
editable={queryComplete}
|
|
103
94
|
/>
|
|
104
95
|
<View style={style.margin5Btm} />
|
|
105
96
|
<PrimaryButton
|
|
106
97
|
onPress={() => setCallActive(true)}
|
|
107
|
-
disabled={!queryComplete}
|
|
98
|
+
disabled={!queryComplete || username.trim() === ''}
|
|
108
99
|
text={queryComplete ? 'Join Room' : 'Loading...'}
|
|
109
100
|
/>
|
|
110
101
|
</View>
|
|
@@ -132,6 +123,10 @@ const Precall = (props: any) => {
|
|
|
132
123
|
justifyContent: 'center',
|
|
133
124
|
marginBottom: '10%',
|
|
134
125
|
}}>
|
|
126
|
+
<Text style={[style.titleHeading, {color: $config.PRIMARY_COLOR}]}>
|
|
127
|
+
{title}
|
|
128
|
+
</Text>
|
|
129
|
+
<View style={{height: 20}} />
|
|
135
130
|
<View style={[{shadowColor: primaryColor}, style.precallPickers]}>
|
|
136
131
|
{/* <View style={{flex: 1}}> */}
|
|
137
132
|
<Text
|
|
@@ -140,7 +135,11 @@ const Precall = (props: any) => {
|
|
|
140
135
|
</Text>
|
|
141
136
|
{/* </View> */}
|
|
142
137
|
<View style={{height: 20}} />
|
|
143
|
-
<View
|
|
138
|
+
<View
|
|
139
|
+
style={{
|
|
140
|
+
flex: 1,
|
|
141
|
+
maxWidth: Platform.OS === 'web' ? '25vw' : 'auto',
|
|
142
|
+
}}>
|
|
144
143
|
<SelectDevice />
|
|
145
144
|
</View>
|
|
146
145
|
<View
|
|
@@ -154,17 +153,18 @@ const Precall = (props: any) => {
|
|
|
154
153
|
<TextInput
|
|
155
154
|
value={username}
|
|
156
155
|
onChangeText={(text) => {
|
|
157
|
-
|
|
158
|
-
setUsername(text);
|
|
159
|
-
}
|
|
156
|
+
setUsername(text);
|
|
160
157
|
}}
|
|
161
158
|
onSubmitEditing={() => {}}
|
|
162
|
-
placeholder=
|
|
159
|
+
placeholder={
|
|
160
|
+
queryComplete ? 'Display name*' : 'Getting name...'
|
|
161
|
+
}
|
|
162
|
+
editable={queryComplete}
|
|
163
163
|
/>
|
|
164
164
|
<View style={{height: 20}} />
|
|
165
165
|
<PrimaryButton
|
|
166
166
|
onPress={() => setCallActive(true)}
|
|
167
|
-
disabled={!queryComplete}
|
|
167
|
+
disabled={!queryComplete || username.trim() === ''}
|
|
168
168
|
text={queryComplete ? 'Join Room' : 'Loading...'}
|
|
169
169
|
/>
|
|
170
170
|
</View>
|
|
@@ -204,11 +204,16 @@ const style = StyleSheet.create({
|
|
|
204
204
|
marginBottom: '1%',
|
|
205
205
|
// marginRight: '5%',
|
|
206
206
|
},
|
|
207
|
-
|
|
207
|
+
titleHeading: {
|
|
208
208
|
fontSize: 28,
|
|
209
209
|
fontWeight: '700',
|
|
210
210
|
color: $config.SECONDARY_FONT_COLOR,
|
|
211
211
|
},
|
|
212
|
+
subHeading: {
|
|
213
|
+
fontSize: 18,
|
|
214
|
+
fontWeight: '700',
|
|
215
|
+
color: $config.SECONDARY_FONT_COLOR,
|
|
216
|
+
},
|
|
212
217
|
headline: {
|
|
213
218
|
fontSize: 20,
|
|
214
219
|
fontWeight: '400',
|