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.
- package/Readme.md +0 -6
- package/package.json +2 -2
- package/template/_package-lock.json +4979 -7086
- package/template/agora-rn-uikit/src/Contexts/LocalUserContext.tsx +0 -4
- package/template/agora-rn-uikit/src/Contexts/PropsContext.tsx +0 -18
- package/template/agora-rn-uikit/src/Contexts/RtcContext.tsx +0 -2
- package/template/agora-rn-uikit/src/Controls/BtnTemplate.tsx +26 -30
- package/template/agora-rn-uikit/src/Controls/Icons.ts +83 -30
- package/template/agora-rn-uikit/src/Controls/ImageIcon.tsx +6 -6
- package/template/agora-rn-uikit/src/Reducer/LocalMuteAudio.ts +0 -1
- package/template/agora-rn-uikit/src/Reducer/LocalMuteVideo.ts +0 -1
- package/template/agora-rn-uikit/src/Reducer/RemoteAudioStateChanged.ts +0 -1
- package/template/agora-rn-uikit/src/Reducer/RemoteVideoStateChanged.ts +0 -1
- package/template/agora-rn-uikit/src/Reducer/UpdateDualStreamMode.ts +0 -1
- package/template/agora-rn-uikit/src/Reducer/UserJoined.ts +0 -2
- package/template/agora-rn-uikit/src/Reducer/UserMuteRemoteAudio.ts +0 -1
- package/template/agora-rn-uikit/src/Reducer/UserMuteRemoteVideo.ts +0 -1
- package/template/agora-rn-uikit/src/Reducer/UserOffline.ts +0 -1
- package/template/agora-rn-uikit/src/Reducer/index.ts +0 -3
- package/template/agora-rn-uikit/src/Rtc/Create.tsx +1 -89
- package/template/agora-rn-uikit/src/RtcConfigure.tsx +2 -39
- package/template/agora-rn-uikit/src/Views/MaxVideoView.native.tsx +5 -15
- package/template/agora-rn-uikit/src/Views/MaxVideoView.tsx +9 -15
- package/template/agora-rn-uikit/src/index.ts +1 -3
- package/template/android/app/build.gradle +0 -1
- package/template/android/app/src/main/AndroidManifest.xml +15 -22
- package/template/android/app/src/main/java/com/helloworld/MainActivity.java +0 -50
- package/template/android/build.gradle +3 -3
- package/template/babel.config.js +0 -1
- package/template/bridge/rtc/webNg/RtcEngine.ts +17 -110
- package/template/customization-api/sub-components.ts +1 -1
- package/template/customization-api/typeDefinition.ts +1 -2
- package/template/electron/index.html +27 -27
- package/template/electron/renderer/index.js +0 -1
- package/template/global.d.ts +4 -26
- package/template/index.js +0 -4
- package/template/index.rsdk.tsx +0 -1
- package/template/index.web.js +1 -7
- package/template/index.wsdk.tsx +1 -1
- package/template/ios/HelloWorld/Info.plist +1 -14
- package/template/ios/HelloWorld.xcodeproj/project.pbxproj +0 -17
- package/template/metro.config.js +1 -1
- package/template/package.json +7 -21
- package/template/react-native-toast-message/index.d.ts +43 -43
- package/template/react-native-toast-message/src/colors/index.js +2 -3
- package/template/react-native-toast-message/src/components/base/index.js +59 -46
- package/template/react-native-toast-message/src/components/base/styles.js +32 -16
- package/template/react-native-toast-message/src/components/error.js +2 -3
- package/template/react-native-toast-message/src/components/info.js +2 -3
- package/template/react-native-toast-message/src/components/success.js +2 -3
- package/template/react-native-toast-message/src/index.js +31 -122
- package/template/react-native-toast-message/src/index.sdk.tsx +35 -125
- package/template/react-native-toast-message/src/styles.js +4 -3
- package/template/react-native-toast-message/src/styles.sdk.ts +4 -3
- package/template/src/App.tsx +0 -6
- package/template/src/AppWrapper.tsx +28 -63
- package/template/src/assets/icons.ts +102 -0
- package/template/src/atoms/HorizontalRule.tsx +1 -3
- package/template/src/atoms/PrimaryButton.tsx +26 -51
- package/template/src/atoms/SecondaryButton.tsx +5 -8
- package/template/src/atoms/TextInput.tsx +14 -12
- package/template/src/components/Chat.tsx +214 -86
- package/template/src/components/ChatContext.ts +1 -8
- package/template/src/components/ColorConfigure.tsx +1 -1
- package/template/src/components/ColorContext.ts +1 -1
- package/template/src/components/{Controls1.native.tsx → Controls.native.tsx} +4 -6
- package/template/src/components/Controls.tsx +42 -342
- package/template/src/components/DeviceConfigure.tsx +101 -461
- package/template/src/components/DeviceContext.tsx +4 -8
- package/template/src/components/EventsConfigure.tsx +7 -144
- package/template/src/components/GraphQLProvider.tsx +1 -1
- package/template/src/components/GridVideo.tsx +44 -59
- package/template/src/components/HostControlView.tsx +35 -114
- package/template/src/components/Navbar.tsx +398 -216
- package/template/src/components/NetworkQualityContext.tsx +20 -20
- package/template/src/components/ParticipantsView.tsx +154 -177
- package/template/src/components/PinnedVideo.tsx +120 -207
- package/template/src/components/Precall.native.tsx +119 -358
- package/template/src/components/Precall.tsx +135 -269
- package/template/src/components/RTMConfigure.tsx +4 -27
- package/template/src/components/Router.electron.ts +0 -1
- package/template/src/components/Router.native.ts +0 -1
- package/template/src/components/Router.sdk.ts +0 -1
- package/template/src/components/Router.ts +0 -1
- package/template/src/components/Settings.tsx +95 -26
- package/template/src/components/SettingsView.tsx +56 -251
- package/template/src/components/Share.tsx +273 -302
- package/template/src/components/StorageContext.tsx +3 -30
- package/template/src/components/chat-messages/useChatMessages.tsx +23 -69
- package/template/src/components/chat-ui/useChatUIControl.tsx +0 -7
- package/template/src/components/common/Error.tsx +6 -20
- package/template/src/components/common/Logo.tsx +15 -16
- package/template/src/components/contexts/LiveStreamDataContext.tsx +5 -10
- package/template/src/components/contexts/VideoMeetingDataContext.tsx +7 -37
- package/template/src/components/livestream/LiveStreamContext.tsx +36 -270
- package/template/src/components/livestream/Types.ts +14 -39
- package/template/src/components/livestream/index.ts +0 -1
- package/template/src/components/livestream/views/LiveStreamControls.tsx +4 -12
- package/template/src/components/participants/AllAudienceParticipants.tsx +30 -101
- package/template/src/components/participants/AllHostParticipants.tsx +34 -103
- package/template/src/components/participants/MeParticipant.tsx +38 -0
- package/template/src/components/participants/ParticipantName.tsx +7 -13
- package/template/src/components/participants/ParticipantSectionTitle.tsx +10 -35
- package/template/src/components/participants/RemoteParticipants.tsx +71 -0
- package/template/src/components/participants/ScreenshareParticipants.tsx +12 -144
- package/template/src/components/precall/{LocalMute1.native.tsx → LocalMute.native.tsx} +5 -21
- package/template/src/components/precall/LocalMute.tsx +14 -84
- package/template/src/components/precall/VideoPreview.native.tsx +3 -48
- package/template/src/components/precall/VideoPreview.tsx +7 -163
- package/template/src/components/precall/joinCallBtn.tsx +2 -15
- package/template/src/components/precall/meetingTitle.tsx +12 -15
- package/template/src/components/precall/selectDevice.tsx +21 -1
- package/template/src/components/precall/textInput.tsx +4 -32
- package/template/src/components/precall/usePreCall.tsx +0 -16
- package/template/src/components/styles.ts +21 -42
- package/template/src/components/useShareLink.tsx +14 -12
- package/template/src/language/default-labels/precallScreenLabels.ts +3 -3
- package/template/src/pages/Authenticate.tsx +15 -5
- package/template/src/pages/Create.tsx +165 -293
- package/template/src/pages/Join.tsx +67 -93
- package/template/src/pages/VideoCall.tsx +64 -89
- package/template/src/pages/video-call/DefaultLayouts.ts +4 -4
- package/template/src/pages/video-call/NameWithMicIcon.tsx +44 -120
- package/template/src/pages/video-call/RenderComponent.tsx +2 -3
- package/template/src/pages/video-call/VideoCallScreen.tsx +9 -45
- package/template/src/pages/video-call/VideoComponent.tsx +3 -18
- package/template/src/pages/video-call/VideoRenderer.tsx +60 -218
- package/template/src/rtm-events/constants.ts +0 -2
- package/template/src/subComponents/ChatBubble.tsx +83 -123
- package/template/src/subComponents/ChatContainer.tsx +84 -257
- package/template/src/subComponents/ChatInput.tsx +46 -61
- package/template/src/subComponents/Checkbox.native.tsx +5 -16
- package/template/src/subComponents/Checkbox.tsx +2 -2
- package/template/src/subComponents/CopyJoinInfo.tsx +58 -36
- package/template/src/subComponents/FallbackLogo.tsx +40 -122
- package/template/src/subComponents/LanguageSelector.tsx +1 -1
- package/template/src/subComponents/{LayoutIconDropdown1.native.tsx → LayoutIconDropdown.native.tsx} +18 -4
- package/template/src/subComponents/LayoutIconDropdown.tsx +134 -131
- package/template/src/subComponents/LocalAudioMute.tsx +27 -119
- package/template/src/subComponents/LocalEndCall.tsx +33 -71
- package/template/src/subComponents/LocalSwitchCamera.tsx +30 -17
- package/template/src/subComponents/LocalVideoMute.tsx +27 -117
- package/template/src/subComponents/Logo.tsx +4 -3
- package/template/src/subComponents/LogoutButton.tsx +1 -1
- package/template/src/subComponents/NetworkQualityPill.tsx +63 -60
- package/template/src/subComponents/OpenInNativeButton.tsx +3 -3
- package/template/src/subComponents/Recording.tsx +29 -28
- package/template/src/subComponents/RemoteAudioMute.tsx +29 -83
- package/template/src/subComponents/RemoteEndCall.tsx +5 -8
- package/template/src/subComponents/RemoteVideoMute.tsx +21 -74
- package/template/src/subComponents/ScreenShareNotice.tsx +8 -83
- package/template/src/subComponents/SelectDevice.tsx +61 -404
- package/template/src/subComponents/SelectOAuth.tsx +8 -9
- package/template/src/subComponents/ToastConfig.tsx +10 -150
- package/template/src/subComponents/chat/ChatParticipants.tsx +78 -187
- package/template/src/subComponents/livestream/CurrentLiveStreamRequestsView.tsx +32 -95
- package/template/src/subComponents/livestream/controls/LocalRaiseHand.tsx +33 -29
- package/template/src/subComponents/livestream/controls/RemoteLiveStreamApprovedRequestRecall.tsx +6 -6
- package/template/src/subComponents/livestream/controls/RemoteLiveStreamRequestApprove.tsx +11 -24
- package/template/src/subComponents/livestream/controls/RemoteLiveStreamRequestReject.tsx +10 -17
- package/template/src/subComponents/recording/useRecording.tsx +27 -79
- package/template/src/subComponents/screenshare/ScreenshareButton.tsx +70 -52
- package/template/src/subComponents/screenshare/ScreenshareConfigure.native.tsx +2 -11
- package/template/src/subComponents/screenshare/ScreenshareConfigure.tsx +4 -26
- package/template/src/utils/common.tsx +1 -155
- package/template/src/utils/index.tsx +0 -19
- package/template/src/utils/isMobileOrTablet.ts +2 -7
- package/template/src/utils/useButtonTemplate.tsx +0 -1
- package/template/src/utils/useMuteToggleLocal.ts +3 -54
- package/template/web/index.html +0 -5
- package/template/webpack.commons.js +8 -13
- package/template/webpack.web.config.js +0 -1
- package/template/agora-rn-uikit/src/Reducer/ActiveSpeakerDetected.ts +0 -11
- package/template/agora-rn-uikit/src/Reducer/LocalPermissionState.ts +0 -24
- package/template/agora-rn-uikit/src/Reducer/UserPin.ts +0 -11
- package/template/android/app/src/main/assets/fonts/SourceSansPro-Regular.ttf +0 -0
- package/template/android/app/src/main/assets/fonts/icomoon.ttf +0 -0
- package/template/android/app/src/main/res/values/colors.xml +0 -7
- package/template/react-native-toast-message/src/components/checkbox.js +0 -178
- package/template/react-native.config.js +0 -7
- package/template/src/assets/font-styles.css +0 -329
- package/template/src/assets/fonts/SourceSansPro-Regular.ttf +0 -0
- package/template/src/assets/fonts/icomoon.ttf +0 -0
- package/template/src/assets/permission.png +0 -0
- package/template/src/assets/selection.json +0 -1
- package/template/src/atoms/ActionMenu.tsx +0 -236
- package/template/src/atoms/AnimatedActiveSpeaker.native.tsx +0 -71
- package/template/src/atoms/AnimatedActiveSpeaker.tsx +0 -84
- package/template/src/atoms/AnimatedRings.native.tsx +0 -68
- package/template/src/atoms/AnimatedRings.tsx +0 -70
- package/template/src/atoms/Card.tsx +0 -61
- package/template/src/atoms/CircularProgress.native.tsx +0 -121
- package/template/src/atoms/CircularProgress.tsx +0 -102
- package/template/src/atoms/CustomIcon.tsx +0 -88
- package/template/src/atoms/CustomSwitch.tsx +0 -287
- package/template/src/atoms/Dropdown.tsx +0 -306
- package/template/src/atoms/IconButton.tsx +0 -162
- package/template/src/atoms/ImageIcon.tsx +0 -98
- package/template/src/atoms/InfoBubble.tsx +0 -291
- package/template/src/atoms/Input.tsx +0 -87
- package/template/src/atoms/InviteInfo.tsx +0 -166
- package/template/src/atoms/LinkButton.tsx +0 -28
- package/template/src/atoms/OutlineButton.tsx +0 -61
- package/template/src/atoms/ParticipantsCount.tsx +0 -73
- package/template/src/atoms/Popup.tsx +0 -147
- package/template/src/atoms/RecordingInfo.tsx +0 -49
- package/template/src/atoms/Spacer.tsx +0 -22
- package/template/src/atoms/TertiaryButton.tsx +0 -78
- package/template/src/atoms/Toggle.tsx +0 -47
- package/template/src/atoms/Tooltip.native.tsx +0 -65
- package/template/src/atoms/Tooltip.tsx +0 -94
- package/template/src/atoms/UserAvatar.tsx +0 -60
- package/template/src/components/CommonStyles.ts +0 -44
- package/template/src/components/ToastComponent.tsx +0 -8
- package/template/src/components/participants/Participant.tsx +0 -302
- package/template/src/components/participants/UserActionMenuOptions.tsx +0 -398
- package/template/src/components/popups/InvitePopup.tsx +0 -115
- package/template/src/components/popups/StopRecordingPopup.tsx +0 -114
- package/template/src/components/precall/PermissionHelper.native.tsx +0 -5
- package/template/src/components/precall/PermissionHelper.tsx +0 -126
- package/template/src/components/precall/PreCallSettings.tsx +0 -52
- package/template/src/components/useToast.tsx +0 -41
- package/template/src/components/useVideoCall.tsx +0 -65
- package/template/src/pages/Endcall.tsx +0 -148
- package/template/src/pages/video-call/ActionSheet.native.tsx +0 -215
- package/template/src/pages/video-call/ActionSheet.tsx +0 -226
- package/template/src/pages/video-call/ActionSheetContent.tsx +0 -479
- package/template/src/pages/video-call/ActionSheetHandle.tsx +0 -38
- package/template/src/pages/video-call/ActionSheetStyles.css +0 -138
- package/template/src/pages/video-call/SidePanelHeader.tsx +0 -190
- package/template/src/pages/video-call/VideoCallMobileView.tsx +0 -139
- package/template/src/pages/video-call/VideoCallScreen.native.tsx +0 -37
- package/template/src/subComponents/ChatInput.ios.tsx +0 -237
- package/template/src/subComponents/EndcallPopup.tsx +0 -107
- package/template/src/subComponents/LayoutIconButton.tsx +0 -201
- package/template/src/subComponents/RemoteMutePopup.tsx +0 -193
- package/template/src/subComponents/RemoveMeetingPopup.tsx +0 -109
- package/template/src/subComponents/RemoveScreensharePopup.tsx +0 -109
- package/template/src/subComponents/SelectDeviceSettings.backup.tsx +0 -207
- package/template/src/subComponents/SidePanelHeader.tsx +0 -112
- package/template/src/theme/index.ts +0 -46
- package/template/src/utils/PlatformWrapper.tsx +0 -21
- package/template/src/utils/hexadecimalTransparency.ts +0 -108
- package/template/src/utils/pendingStateUpdateHelper.ts +0 -19
- package/template/src/utils/useFocus.tsx +0 -46
- package/template/src/utils/useIsActiveSpeaker.ts +0 -27
- package/template/src/utils/useIsHandRaised.ts +0 -13
- package/template/src/utils/useRemoteEndScreenshare.ts +0 -26
- package/template/src/utils/useRemoteRequest.ts +0 -84
|
@@ -23,8 +23,6 @@ import AgoraRTC, {
|
|
|
23
23
|
EncryptionMode,
|
|
24
24
|
ILocalTrack,
|
|
25
25
|
ClientRoleOptions,
|
|
26
|
-
CameraVideoTrackInitConfig,
|
|
27
|
-
MicrophoneAudioTrackInitConfig,
|
|
28
26
|
} from 'agora-rtc-sdk-ng';
|
|
29
27
|
import type {
|
|
30
28
|
RtcEngineEvents,
|
|
@@ -48,12 +46,9 @@ type callbackType = (uid?: UID) => void;
|
|
|
48
46
|
declare global {
|
|
49
47
|
interface Window {
|
|
50
48
|
engine: RtcEngine;
|
|
51
|
-
AgoraRTC: typeof AgoraRTC;
|
|
52
49
|
}
|
|
53
50
|
}
|
|
54
51
|
|
|
55
|
-
window.AgoraRTC = AgoraRTC;
|
|
56
|
-
|
|
57
52
|
export enum AREAS {
|
|
58
53
|
/**
|
|
59
54
|
* China.
|
|
@@ -171,7 +166,6 @@ if ($config.LOG_ENABLED) {
|
|
|
171
166
|
}
|
|
172
167
|
|
|
173
168
|
export default class RtcEngine {
|
|
174
|
-
private activeSpeakerUid: number;
|
|
175
169
|
public appId: string;
|
|
176
170
|
// public AgoraRTC: any;
|
|
177
171
|
public client: any | IAgoraRTCClient;
|
|
@@ -184,7 +178,6 @@ export default class RtcEngine {
|
|
|
184
178
|
['RemoteAudioStateChanged', () => null],
|
|
185
179
|
['RemoteVideoStateChanged', () => null],
|
|
186
180
|
['NetworkQuality', () => null],
|
|
187
|
-
['ActiveSpeaker', () => null],
|
|
188
181
|
]);
|
|
189
182
|
public localStream: LocalStream = {};
|
|
190
183
|
public screenStream: ScreenStream = {};
|
|
@@ -192,16 +185,15 @@ export default class RtcEngine {
|
|
|
192
185
|
private inScreenshare: Boolean = false;
|
|
193
186
|
private videoProfile: VideoProfile = '480p_9';
|
|
194
187
|
private isPublished = false;
|
|
195
|
-
private isAudioEnabled =
|
|
196
|
-
private isVideoEnabled =
|
|
188
|
+
private isAudioEnabled = true;
|
|
189
|
+
private isVideoEnabled = true;
|
|
197
190
|
private isAudioPublished = false;
|
|
198
191
|
private isVideoPublished = false;
|
|
199
192
|
private isJoined = false;
|
|
200
|
-
private
|
|
201
|
-
private audioDeviceId = undefined;
|
|
193
|
+
private deviceId = '';
|
|
202
194
|
private muteLocalVideoMutex = false;
|
|
203
195
|
private muteLocalAudioMutex = false;
|
|
204
|
-
|
|
196
|
+
|
|
205
197
|
// Create channel profile and set it here
|
|
206
198
|
|
|
207
199
|
// Create channel profile and set it here
|
|
@@ -222,17 +214,9 @@ export default class RtcEngine {
|
|
|
222
214
|
}
|
|
223
215
|
|
|
224
216
|
async enableAudio(): Promise<void> {
|
|
225
|
-
const audioConfig: MicrophoneAudioTrackInitConfig = {
|
|
226
|
-
bypassWebAudio: Platform.OS == 'web' && isMobileOrTablet(),
|
|
227
|
-
// microphoneId: this.audioDeviceId,
|
|
228
|
-
};
|
|
229
217
|
try {
|
|
230
|
-
let localAudio = await AgoraRTC.createMicrophoneAudioTrack(
|
|
218
|
+
let localAudio = await AgoraRTC.createMicrophoneAudioTrack({});
|
|
231
219
|
this.localStream.audio = localAudio;
|
|
232
|
-
this.audioDeviceId = localAudio
|
|
233
|
-
?.getMediaStreamTrack()
|
|
234
|
-
.getSettings().deviceId;
|
|
235
|
-
this.isAudioEnabled = true;
|
|
236
220
|
} catch (e) {
|
|
237
221
|
let audioError = e;
|
|
238
222
|
e.status = {audioError};
|
|
@@ -250,30 +234,15 @@ export default class RtcEngine {
|
|
|
250
234
|
* The Web SDK directly publishes the local audio stream without processing it through WebAudio.
|
|
251
235
|
*/
|
|
252
236
|
|
|
253
|
-
const audioConfig
|
|
254
|
-
|
|
255
|
-
// microphoneId: this.audioDeviceId,
|
|
256
|
-
};
|
|
257
|
-
const videoConfig: CameraVideoTrackInitConfig = {
|
|
258
|
-
encoderConfig: this.videoProfile,
|
|
259
|
-
// cameraId: this.videoDeviceId,
|
|
260
|
-
};
|
|
237
|
+
const audioConfig =
|
|
238
|
+
Platform.OS == 'web' && isMobileOrTablet() ? {bypassWebAudio: true} : {};
|
|
261
239
|
try {
|
|
262
240
|
let [localAudio, localVideo] =
|
|
263
|
-
await AgoraRTC.createMicrophoneAndCameraTracks(
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
);
|
|
241
|
+
await AgoraRTC.createMicrophoneAndCameraTracks(audioConfig, {
|
|
242
|
+
encoderConfig: this.videoProfile,
|
|
243
|
+
});
|
|
267
244
|
this.localStream.audio = localAudio;
|
|
268
245
|
this.localStream.video = localVideo;
|
|
269
|
-
this.audioDeviceId = localAudio
|
|
270
|
-
?.getMediaStreamTrack()
|
|
271
|
-
.getSettings().deviceId;
|
|
272
|
-
this.videoDeviceId = localVideo
|
|
273
|
-
?.getMediaStreamTrack()
|
|
274
|
-
.getSettings().deviceId;
|
|
275
|
-
this.isVideoEnabled = true;
|
|
276
|
-
this.isAudioEnabled = true;
|
|
277
246
|
} catch (e) {
|
|
278
247
|
let audioError = false;
|
|
279
248
|
let videoError = false;
|
|
@@ -281,20 +250,14 @@ export default class RtcEngine {
|
|
|
281
250
|
let localAudio = await AgoraRTC.createMicrophoneAudioTrack(audioConfig);
|
|
282
251
|
|
|
283
252
|
this.localStream.audio = localAudio;
|
|
284
|
-
this.audioDeviceId = localAudio
|
|
285
|
-
?.getMediaStreamTrack()
|
|
286
|
-
.getSettings().deviceId;
|
|
287
|
-
this.isAudioEnabled = true;
|
|
288
253
|
} catch (error) {
|
|
289
254
|
audioError = error;
|
|
290
255
|
}
|
|
291
256
|
try {
|
|
292
|
-
let localVideo = await AgoraRTC.createCameraVideoTrack(
|
|
257
|
+
let localVideo = await AgoraRTC.createCameraVideoTrack({
|
|
258
|
+
encoderConfig: this.videoProfile,
|
|
259
|
+
});
|
|
293
260
|
this.localStream.video = localVideo;
|
|
294
|
-
this.videoDeviceId = localVideo
|
|
295
|
-
?.getMediaStreamTrack()
|
|
296
|
-
.getSettings().deviceId;
|
|
297
|
-
this.isVideoEnabled = true;
|
|
298
261
|
} catch (error) {
|
|
299
262
|
videoError = error;
|
|
300
263
|
}
|
|
@@ -308,11 +271,6 @@ export default class RtcEngine {
|
|
|
308
271
|
}
|
|
309
272
|
}
|
|
310
273
|
|
|
311
|
-
async enableAudioVolumeIndication(interval, smooth, isLocal) {
|
|
312
|
-
AgoraRTC.setParameter('AUDIO_VOLUME_INDICATION_INTERVAL', interval);
|
|
313
|
-
this.client.enableAudioVolumeIndicator();
|
|
314
|
-
}
|
|
315
|
-
|
|
316
274
|
async publish() {
|
|
317
275
|
if (this.localStream.audio || this.localStream.video) {
|
|
318
276
|
try {
|
|
@@ -402,12 +360,6 @@ export default class RtcEngine {
|
|
|
402
360
|
...this.remoteStreams.get(user.uid),
|
|
403
361
|
audio: audioTrack,
|
|
404
362
|
});
|
|
405
|
-
if (this.speakerDeviceId) {
|
|
406
|
-
// setting sepeaker for all remote stream (newly joining user)
|
|
407
|
-
this.remoteStreams
|
|
408
|
-
.get(user.uid)
|
|
409
|
-
?.audio?.setPlaybackDevice(this.speakerDeviceId);
|
|
410
|
-
}
|
|
411
363
|
(this.eventsMap.get('RemoteAudioStateChanged') as callbackType)(
|
|
412
364
|
user.uid,
|
|
413
365
|
2,
|
|
@@ -452,36 +404,6 @@ export default class RtcEngine {
|
|
|
452
404
|
}
|
|
453
405
|
});
|
|
454
406
|
|
|
455
|
-
this.client.on('volume-indicator', (volumes) => {
|
|
456
|
-
const highestvolumeObj = volumes.reduce(
|
|
457
|
-
(highestVolume, volume, index) => {
|
|
458
|
-
if (highestVolume === null) {
|
|
459
|
-
return volume;
|
|
460
|
-
} else {
|
|
461
|
-
if (volume.level > highestVolume.level) {
|
|
462
|
-
return volume;
|
|
463
|
-
}
|
|
464
|
-
return highestVolume;
|
|
465
|
-
}
|
|
466
|
-
// console.log(`${index} UID ${volume.uid} Level ${volume.level}`);
|
|
467
|
-
},
|
|
468
|
-
null,
|
|
469
|
-
);
|
|
470
|
-
const activeSpeakerUid =
|
|
471
|
-
highestvolumeObj && highestvolumeObj?.level > 0 && highestvolumeObj?.uid
|
|
472
|
-
? highestvolumeObj.uid
|
|
473
|
-
: undefined;
|
|
474
|
-
|
|
475
|
-
//To avoid infinite calling dispatch checking if condition.
|
|
476
|
-
if (this.activeSpeakerUid !== activeSpeakerUid) {
|
|
477
|
-
const activeSpeakerCallBack = this.eventsMap.get(
|
|
478
|
-
'ActiveSpeaker',
|
|
479
|
-
) as callbackType;
|
|
480
|
-
activeSpeakerCallBack(activeSpeakerUid);
|
|
481
|
-
this.activeSpeakerUid = activeSpeakerUid;
|
|
482
|
-
}
|
|
483
|
-
});
|
|
484
|
-
|
|
485
407
|
// this.client.on('stream-fallback', (evt))
|
|
486
408
|
this.client.on('stream-type-changed', function (uid, streamType) {
|
|
487
409
|
console.log('[fallback]: ', uid, streamType);
|
|
@@ -546,8 +468,7 @@ export default class RtcEngine {
|
|
|
546
468
|
event === 'ScreenshareStopped' ||
|
|
547
469
|
event === 'RemoteAudioStateChanged' ||
|
|
548
470
|
event === 'RemoteVideoStateChanged' ||
|
|
549
|
-
event === 'NetworkQuality'
|
|
550
|
-
event === 'ActiveSpeaker'
|
|
471
|
+
event === 'NetworkQuality'
|
|
551
472
|
) {
|
|
552
473
|
this.eventsMap.set(event, listener as callbackType);
|
|
553
474
|
}
|
|
@@ -695,7 +616,7 @@ export default class RtcEngine {
|
|
|
695
616
|
async changeCamera(cameraId, callback, error): Promise<void> {
|
|
696
617
|
try {
|
|
697
618
|
await this.localStream.video?.setDevice(cameraId);
|
|
698
|
-
this.
|
|
619
|
+
this.deviceId = cameraId;
|
|
699
620
|
callback(cameraId);
|
|
700
621
|
} catch (e) {
|
|
701
622
|
error(e);
|
|
@@ -707,9 +628,9 @@ export default class RtcEngine {
|
|
|
707
628
|
const devices = await AgoraRTC.getDevices(true);
|
|
708
629
|
for (let i = 0; i < devices.length; i++) {
|
|
709
630
|
let d = devices[i];
|
|
710
|
-
if (d.kind === 'videoinput' && d.deviceId !== this.
|
|
631
|
+
if (d.kind === 'videoinput' && d.deviceId !== this.deviceId) {
|
|
711
632
|
await this.localStream.video?.setDevice(d.deviceId);
|
|
712
|
-
this.
|
|
633
|
+
this.deviceId = d.deviceId;
|
|
713
634
|
break;
|
|
714
635
|
}
|
|
715
636
|
}
|
|
@@ -721,26 +642,12 @@ export default class RtcEngine {
|
|
|
721
642
|
async changeMic(micId, callback, error) {
|
|
722
643
|
try {
|
|
723
644
|
await this.localStream.audio?.setDevice(micId);
|
|
724
|
-
this.audioDeviceId = micId;
|
|
725
645
|
callback(micId);
|
|
726
646
|
} catch (e) {
|
|
727
647
|
error(e);
|
|
728
648
|
}
|
|
729
649
|
}
|
|
730
650
|
|
|
731
|
-
async changeSpeaker(speakerId, callback, error) {
|
|
732
|
-
try {
|
|
733
|
-
this.speakerDeviceId = speakerId;
|
|
734
|
-
// setting sepeaker for all remote stream (previously joined users)
|
|
735
|
-
this.remoteStreams?.forEach((stream, uid, map) => {
|
|
736
|
-
stream?.audio?.setPlaybackDevice(speakerId);
|
|
737
|
-
});
|
|
738
|
-
callback(speakerId);
|
|
739
|
-
} catch (e) {
|
|
740
|
-
error(e);
|
|
741
|
-
}
|
|
742
|
-
}
|
|
743
|
-
|
|
744
651
|
async enableDualStreamMode(enable: boolean) {
|
|
745
652
|
return this.client[enable ? 'enableDualStream' : 'disableDualStream']();
|
|
746
653
|
// enable
|
|
@@ -4,7 +4,7 @@ export {default as PrimaryButton} from '../src/atoms/PrimaryButton';
|
|
|
4
4
|
export {default as SecondaryButton} from '../src/atoms/SecondaryButton';
|
|
5
5
|
export {default as TextInput} from '../src/atoms/TextInput';
|
|
6
6
|
//Icons
|
|
7
|
-
export {
|
|
7
|
+
export {default as icons} from '../src/assets/icons';
|
|
8
8
|
|
|
9
9
|
// commented for v1 release
|
|
10
10
|
//create screen
|
|
@@ -18,7 +18,7 @@ import {
|
|
|
18
18
|
UidType,
|
|
19
19
|
} from '../agora-rn-uikit';
|
|
20
20
|
import {I18nInterface} from '../src/language/i18nTypes';
|
|
21
|
-
import {IconsInterface} from '../src/
|
|
21
|
+
import {IconsInterface} from '../agora-rn-uikit/src/Controls/Icons';
|
|
22
22
|
export type {RenderInterface, RenderStateInterface, UidType};
|
|
23
23
|
export type {
|
|
24
24
|
ChatTextInputProps,
|
|
@@ -56,7 +56,6 @@ export interface ChatCmpInterface {
|
|
|
56
56
|
|
|
57
57
|
export interface renderComponentInterface {
|
|
58
58
|
user: RenderInterface;
|
|
59
|
-
isMax?: boolean;
|
|
60
59
|
}
|
|
61
60
|
|
|
62
61
|
export interface renderComponentObjectInterface {
|
|
@@ -1,29 +1,29 @@
|
|
|
1
1
|
<!DOCTYPE html>
|
|
2
2
|
<html lang="en">
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
</html>
|
|
3
|
+
<head>
|
|
4
|
+
<meta charset="UTF-8">
|
|
5
|
+
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
6
|
+
|
|
7
|
+
<base href="./">
|
|
8
|
+
<title><%= htmlWebpackPlugin.options.title %></title>
|
|
9
|
+
</head>
|
|
10
|
+
<body>
|
|
11
|
+
<style>
|
|
12
|
+
.video-container > *{
|
|
13
|
+
background-color: #000 !important;
|
|
14
|
+
|
|
15
|
+
}
|
|
16
|
+
.video-container video{
|
|
17
|
+
background-color: #000;
|
|
18
|
+
}
|
|
19
|
+
.video-container{
|
|
20
|
+
background-color: #000;
|
|
21
|
+
}
|
|
22
|
+
</style>
|
|
23
|
+
<div id="react-app" style="
|
|
24
|
+
height: 100vh;
|
|
25
|
+
display: flex;
|
|
26
|
+
">
|
|
27
|
+
</div>
|
|
28
|
+
</body>
|
|
29
|
+
</html>
|
package/template/global.d.ts
CHANGED
|
@@ -47,6 +47,7 @@ interface ConfigInterface {
|
|
|
47
47
|
APP_NAME: string;
|
|
48
48
|
LOGO: string;
|
|
49
49
|
APP_ID: string;
|
|
50
|
+
PRIMARY_COLOR: string;
|
|
50
51
|
FRONTEND_ENDPOINT: string;
|
|
51
52
|
BACKEND_ENDPOINT: string;
|
|
52
53
|
PSTN: boolean;
|
|
@@ -56,9 +57,11 @@ interface ConfigInterface {
|
|
|
56
57
|
SCREEN_SHARING: boolean;
|
|
57
58
|
CLIENT_ID: string;
|
|
58
59
|
LANDING_SUB_HEADING: string;
|
|
60
|
+
BG: string;
|
|
59
61
|
ENCRYPTION_ENABLED: boolean;
|
|
60
62
|
PROFILE: VideoProfile;
|
|
61
|
-
|
|
63
|
+
PRIMARY_FONT_COLOR: string;
|
|
64
|
+
SECONDARY_FONT_COLOR: string;
|
|
62
65
|
ENABLE_GOOGLE_OAUTH: boolean;
|
|
63
66
|
ENABLE_SLACK_OAUTH: boolean;
|
|
64
67
|
ENABLE_MICROSOFT_OAUTH: boolean;
|
|
@@ -72,31 +75,6 @@ interface ConfigInterface {
|
|
|
72
75
|
GEO_FENCING: boolean;
|
|
73
76
|
LOG_ENABLED: boolean;
|
|
74
77
|
AUDIO_ROOM: boolean;
|
|
75
|
-
PRIMARY_ACTION_BRAND_COLOR: string;
|
|
76
|
-
PRIMARY_ACTION_TEXT_COLOR: string;
|
|
77
|
-
SECONDARY_ACTION_COLOR: string;
|
|
78
|
-
FONT_COLOR: string;
|
|
79
|
-
BG: string;
|
|
80
|
-
BACKGROUND_COLOR: string;
|
|
81
|
-
VIDEO_AUDIO_TILE_COLOR: string;
|
|
82
|
-
VIDEO_AUDIO_TILE_OVERLAY_COLOR: string;
|
|
83
|
-
VIDEO_AUDIO_TILE_TEXT_COLOR: string;
|
|
84
|
-
VIDEO_AUDIO_TILE_AVATAR_COLOR: string;
|
|
85
|
-
SEMANTIC_ERROR: string;
|
|
86
|
-
SEMANTIC_SUCCESS: string;
|
|
87
|
-
SEMANTIC_WARNING: string;
|
|
88
|
-
SEMANTIC_NEUTRAL: string;
|
|
89
|
-
INPUT_FIELD_BACKGROUND_COLOR: string;
|
|
90
|
-
INPUT_FIELD_BORDER_COLOR: string;
|
|
91
|
-
CARD_LAYER_1_COLOR: string;
|
|
92
|
-
CARD_LAYER_2_COLOR: string;
|
|
93
|
-
CARD_LAYER_3_COLOR: string;
|
|
94
|
-
CARD_LAYER_4_COLOR: string;
|
|
95
|
-
CARD_LAYER_5_COLOR: string;
|
|
96
|
-
HARD_CODED_BLACK_COLOR: string;
|
|
97
|
-
ICON_TEXT: boolean;
|
|
98
|
-
ICON_BG_COLOR: string;
|
|
99
|
-
TOOLBAR_COLOR: string;
|
|
100
78
|
}
|
|
101
79
|
declare var $config: ConfigInterface;
|
|
102
80
|
declare module 'customization' {
|
package/template/index.js
CHANGED
|
@@ -14,11 +14,7 @@
|
|
|
14
14
|
*/
|
|
15
15
|
|
|
16
16
|
import {AppRegistry} from 'react-native';
|
|
17
|
-
import * as Sentry from '@sentry/react-native';
|
|
18
17
|
import App from './src/App';
|
|
19
18
|
import {name as appName} from './app.json';
|
|
20
19
|
|
|
21
|
-
Sentry.init({
|
|
22
|
-
dsn: 'https://b5df0450fe284baa8376e62ace331580@o615358.ingest.sentry.io/5749898',
|
|
23
|
-
});
|
|
24
20
|
AppRegistry.registerComponent(appName, () => App);
|
package/template/index.rsdk.tsx
CHANGED
package/template/index.web.js
CHANGED
|
@@ -9,14 +9,8 @@
|
|
|
9
9
|
information visit https://appbuilder.agora.io.
|
|
10
10
|
*********************************************
|
|
11
11
|
*/
|
|
12
|
-
import {
|
|
13
|
-
import * as Sentry from '@sentry/browser';
|
|
12
|
+
import {AppRegistry} from 'react-native';
|
|
14
13
|
import Video from './src/App';
|
|
15
|
-
import './src/assets/font-styles.css'
|
|
16
|
-
|
|
17
|
-
Sentry.init({
|
|
18
|
-
dsn: 'https://b5df0450fe284baa8376e62ace331580@o615358.ingest.sentry.io/5749898',
|
|
19
|
-
});
|
|
20
14
|
|
|
21
15
|
AppRegistry.registerComponent('App', () => Video);
|
|
22
16
|
|
package/template/index.wsdk.tsx
CHANGED
|
@@ -6,7 +6,7 @@ import SDKAppWrapper, {
|
|
|
6
6
|
import SDKEvents from './src/utils/SdkEvents';
|
|
7
7
|
import React from 'react';
|
|
8
8
|
import * as RN from 'react-native-web';
|
|
9
|
-
|
|
9
|
+
|
|
10
10
|
export * from 'customization-api';
|
|
11
11
|
export * from 'customization-implementation';
|
|
12
12
|
|
|
@@ -53,18 +53,9 @@
|
|
|
53
53
|
<key>NSCameraUsageDescription</key>
|
|
54
54
|
<string>Camera access</string>
|
|
55
55
|
<key>NSLocationWhenInUseUsageDescription</key>
|
|
56
|
-
<string
|
|
56
|
+
<string></string>
|
|
57
57
|
<key>NSMicrophoneUsageDescription</key>
|
|
58
58
|
<string>Mic access</string>
|
|
59
|
-
<key>UIAppFonts</key>
|
|
60
|
-
<array>
|
|
61
|
-
<string>SourceSansPro-Regular.ttf</string>
|
|
62
|
-
<string>icomoon.ttf</string>
|
|
63
|
-
</array>
|
|
64
|
-
<key>UIBackgroundModes</key>
|
|
65
|
-
<array>
|
|
66
|
-
<string>audio</string>
|
|
67
|
-
</array>
|
|
68
59
|
<key>UILaunchStoryboardName</key>
|
|
69
60
|
<string>LaunchScreen</string>
|
|
70
61
|
<key>UIRequiredDeviceCapabilities</key>
|
|
@@ -74,12 +65,8 @@
|
|
|
74
65
|
<key>UISupportedInterfaceOrientations</key>
|
|
75
66
|
<array>
|
|
76
67
|
<string>UIInterfaceOrientationPortrait</string>
|
|
77
|
-
</array>
|
|
78
|
-
<key>UISupportedInterfaceOrientations~ipad</key>
|
|
79
|
-
<array>
|
|
80
68
|
<string>UIInterfaceOrientationLandscapeLeft</string>
|
|
81
69
|
<string>UIInterfaceOrientationLandscapeRight</string>
|
|
82
|
-
<string>UIInterfaceOrientationPortrait</string>
|
|
83
70
|
</array>
|
|
84
71
|
<key>UIViewControllerBasedStatusBarAppearance</key>
|
|
85
72
|
<false/>
|
|
@@ -18,8 +18,6 @@
|
|
|
18
18
|
65580BB1266EDC8000B310B6 /* File.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65580BB0266EDC8000B310B6 /* File.swift */; };
|
|
19
19
|
65580BB3266EDD6300B310B6 /* HelloWorld.entitlements in Resources */ = {isa = PBXBuildFile; fileRef = 65580BB2266EDCA400B310B6 /* HelloWorld.entitlements */; };
|
|
20
20
|
81AB9BB82411601600AC10FF /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 81AB9BB72411601600AC10FF /* LaunchScreen.storyboard */; };
|
|
21
|
-
49B7B61E43464F098E87335F /* icomoon.ttf in Resources */ = {isa = PBXBuildFile; fileRef = FF34150ABA37458FB48221FB /* icomoon.ttf */; };
|
|
22
|
-
76624C45E19C435BACC727C7 /* SourceSansPro-Regular.ttf in Resources */ = {isa = PBXBuildFile; fileRef = E72FF36D2A984B10BA9C6F91 /* SourceSansPro-Regular.ttf */; };
|
|
23
21
|
/* End PBXBuildFile section */
|
|
24
22
|
|
|
25
23
|
/* Begin PBXContainerItemProxy section */
|
|
@@ -58,8 +56,6 @@
|
|
|
58
56
|
81AB9BB72411601600AC10FF /* LaunchScreen.storyboard */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.storyboard; name = LaunchScreen.storyboard; path = HelloWorld/LaunchScreen.storyboard; sourceTree = "<group>"; };
|
|
59
57
|
ED297162215061F000B7C4FE /* JavaScriptCore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = JavaScriptCore.framework; path = System/Library/Frameworks/JavaScriptCore.framework; sourceTree = SDKROOT; };
|
|
60
58
|
ED2971642150620600B7C4FE /* JavaScriptCore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = JavaScriptCore.framework; path = Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS12.0.sdk/System/Library/Frameworks/JavaScriptCore.framework; sourceTree = DEVELOPER_DIR; };
|
|
61
|
-
FF34150ABA37458FB48221FB /* icomoon.ttf */ = {isa = PBXFileReference; name = "icomoon.ttf"; path = "../src/assets/fonts/icomoon.ttf"; sourceTree = "<group>"; fileEncoding = undefined; lastKnownFileType = unknown; explicitFileType = undefined; includeInIndex = 0; };
|
|
62
|
-
E72FF36D2A984B10BA9C6F91 /* SourceSansPro-Regular.ttf */ = {isa = PBXFileReference; name = "SourceSansPro-Regular.ttf"; path = "../src/assets/fonts/SourceSansPro-Regular.ttf"; sourceTree = "<group>"; fileEncoding = undefined; lastKnownFileType = unknown; explicitFileType = undefined; includeInIndex = 0; };
|
|
63
59
|
/* End PBXFileReference section */
|
|
64
60
|
|
|
65
61
|
/* Begin PBXFrameworksBuildPhase section */
|
|
@@ -152,7 +148,6 @@
|
|
|
152
148
|
00E356EF1AD99517003FC87E /* HelloWorldTests */,
|
|
153
149
|
83CBBA001A601CBA00E9B192 /* Products */,
|
|
154
150
|
2D16E6871FA4F8E400B85C8A /* Frameworks */,
|
|
155
|
-
A87D6475B3A64BB58397D417 /* Resources */,
|
|
156
151
|
);
|
|
157
152
|
indentWidth = 2;
|
|
158
153
|
sourceTree = "<group>";
|
|
@@ -170,16 +165,6 @@
|
|
|
170
165
|
name = Products;
|
|
171
166
|
sourceTree = "<group>";
|
|
172
167
|
};
|
|
173
|
-
A87D6475B3A64BB58397D417 /* Resources */ = {
|
|
174
|
-
isa = "PBXGroup";
|
|
175
|
-
children = (
|
|
176
|
-
FF34150ABA37458FB48221FB /* icomoon.ttf */,
|
|
177
|
-
E72FF36D2A984B10BA9C6F91 /* SourceSansPro-Regular.ttf */,
|
|
178
|
-
);
|
|
179
|
-
name = Resources;
|
|
180
|
-
sourceTree = "<group>";
|
|
181
|
-
path = "";
|
|
182
|
-
};
|
|
183
168
|
/* End PBXGroup section */
|
|
184
169
|
|
|
185
170
|
/* Begin PBXNativeTarget section */
|
|
@@ -319,8 +304,6 @@
|
|
|
319
304
|
65580BB3266EDD6300B310B6 /* HelloWorld.entitlements in Resources */,
|
|
320
305
|
81AB9BB82411601600AC10FF /* LaunchScreen.storyboard in Resources */,
|
|
321
306
|
13B07FBF1A68108700A75B9A /* Images.xcassets in Resources */,
|
|
322
|
-
49B7B61E43464F098E87335F /* icomoon.ttf in Resources */,
|
|
323
|
-
76624C45E19C435BACC727C7 /* SourceSansPro-Regular.ttf in Resources */,
|
|
324
307
|
);
|
|
325
308
|
runOnlyForDeploymentPostprocessing = 0;
|
|
326
309
|
};
|
package/template/metro.config.js
CHANGED
|
@@ -16,7 +16,7 @@
|
|
|
16
16
|
* @format
|
|
17
17
|
*/
|
|
18
18
|
|
|
19
|
-
const blacklist = require('metro-config/src/defaults/
|
|
19
|
+
const blacklist = require('metro-config/src/defaults/blacklist');
|
|
20
20
|
|
|
21
21
|
// blacklist is a function that takes an array of regexes and combines
|
|
22
22
|
// them with the default blacklist to return a single regex.
|
package/template/package.json
CHANGED
|
@@ -49,15 +49,10 @@
|
|
|
49
49
|
},
|
|
50
50
|
"dependencies": {
|
|
51
51
|
"@apollo/client": "3.3.20",
|
|
52
|
-
"@
|
|
53
|
-
"@react-native-async-storage/async-storage": "1.17.11",
|
|
52
|
+
"@react-native-community/async-storage": "1.12.1",
|
|
54
53
|
"@react-native-community/checkbox": "0.4.2",
|
|
55
54
|
"@react-native-community/clipboard": "1.5.1",
|
|
56
|
-
"
|
|
57
|
-
"@sentry/react-native": "2.4.3",
|
|
58
|
-
"@sentry/tracing": "6.2.1",
|
|
59
|
-
"@supersami/rn-foreground-service": "^1.1.1",
|
|
60
|
-
"agora-react-native-rtm": "1.5.1",
|
|
55
|
+
"agora-react-native-rtm": "1.5.0",
|
|
61
56
|
"agora-rtc-sdk-ng": "4.14.0",
|
|
62
57
|
"agora-rtm-sdk": "1.4.3-203",
|
|
63
58
|
"electron-log": "4.3.5",
|
|
@@ -68,26 +63,19 @@
|
|
|
68
63
|
"nanoevents": "7.0.1",
|
|
69
64
|
"nanoid": "4.0.0",
|
|
70
65
|
"nosleep.js": "0.12.0",
|
|
71
|
-
"react": "
|
|
72
|
-
"react-dom": "
|
|
66
|
+
"react": "16.13.1",
|
|
67
|
+
"react-dom": "16.13.1",
|
|
73
68
|
"react-is": "18.0.0",
|
|
74
|
-
"react-native": "0.
|
|
69
|
+
"react-native": "0.63.5",
|
|
75
70
|
"react-native-agora": "3.7.1",
|
|
76
|
-
"react-native-gesture-handler": "2.8.0",
|
|
77
71
|
"react-native-hyperlink": "0.0.19",
|
|
78
72
|
"react-native-inappbrowser-reborn": "3.5.1",
|
|
79
73
|
"react-native-keep-awake": "4.0.0",
|
|
80
74
|
"react-native-keyboard-manager": "6.5.4-1",
|
|
81
|
-
"react-native-reanimated": "2.12.0",
|
|
82
75
|
"react-native-responsive-fontsize": "0.5.1",
|
|
83
|
-
"react-native-svg": "13.6.0",
|
|
84
|
-
"react-native-vector-icons": "9.2.0",
|
|
85
|
-
"react-native-walkthrough-tooltip": "1.4.0",
|
|
86
76
|
"react-native-web": "0.14.13",
|
|
87
77
|
"react-router-dom": "5.2.0",
|
|
88
|
-
"react-router-native": "5.2.0"
|
|
89
|
-
"react-spring-bottom-sheet": "3.4.1",
|
|
90
|
-
"react-tooltip": "4.5.1"
|
|
78
|
+
"react-router-native": "5.2.0"
|
|
91
79
|
},
|
|
92
80
|
"devDependencies": {
|
|
93
81
|
"@babel/core": "7.14.3",
|
|
@@ -116,7 +104,6 @@
|
|
|
116
104
|
"babel-plugin-module-resolver": "4.1.0",
|
|
117
105
|
"babel-plugin-transform-define": "2.0.1",
|
|
118
106
|
"cross-env": "7.0.3",
|
|
119
|
-
"css-loader": "6.7.2",
|
|
120
107
|
"del": "5.1.0",
|
|
121
108
|
"electron": "16.0.1",
|
|
122
109
|
"electron-builder": "23.6.0",
|
|
@@ -134,8 +121,7 @@
|
|
|
134
121
|
"prettier": "2.3.1",
|
|
135
122
|
"react-devtools-electron": "4.7.0",
|
|
136
123
|
"react-refresh": "0.12.0",
|
|
137
|
-
"react-test-renderer": "
|
|
138
|
-
"style-loader": "3.3.1",
|
|
124
|
+
"react-test-renderer": "16.13.1",
|
|
139
125
|
"ts-loader": "^8.3.0",
|
|
140
126
|
"typescript": "3.9.9",
|
|
141
127
|
"webpack": "5.72.0",
|