agora-appbuilder-core 3.0.13 → 3.0.28-beta-9
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 +6 -0
- package/package.json +3 -3
- package/template/.bundle/config +2 -0
- package/template/Gemfile +4 -0
- package/template/Gulpfile.js +31 -30
- package/template/_eslintrc.js +3 -3
- package/template/_gitignore +12 -11
- package/template/_package-lock.json +34387 -27128
- package/template/_prettierrc.js +2 -2
- package/template/agora-rn-uikit/.eslintrc.js +5 -0
- package/template/agora-rn-uikit/package-lock.json +25024 -0
- package/template/agora-rn-uikit/package.json +14 -14
- package/template/agora-rn-uikit/src/AgoraUIKit.tsx +6 -6
- package/template/agora-rn-uikit/src/Contexts/ContentContext.tsx +10 -0
- package/template/agora-rn-uikit/src/Contexts/DispatchContext.tsx +22 -0
- package/template/agora-rn-uikit/src/Contexts/LocalUserContext.tsx +10 -6
- package/template/agora-rn-uikit/src/Contexts/PropsContext.tsx +98 -37
- package/template/agora-rn-uikit/src/Contexts/RtcContext.tsx +27 -16
- package/template/agora-rn-uikit/src/Controls/BtnTemplate.tsx +31 -26
- package/template/agora-rn-uikit/src/Controls/Icons.ts +81 -83
- package/template/agora-rn-uikit/src/Controls/ImageIcon.tsx +6 -6
- package/template/agora-rn-uikit/src/Controls/Local/EndCall.tsx +6 -4
- package/template/agora-rn-uikit/src/Controls/Local/FullScreen.tsx +3 -1
- package/template/agora-rn-uikit/src/Controls/Local/LocalAudioMute.tsx +5 -2
- package/template/agora-rn-uikit/src/Controls/Local/LocalVideoMute.tsx +5 -2
- package/template/agora-rn-uikit/src/Controls/Local/Recording.tsx +0 -2
- package/template/agora-rn-uikit/src/Controls/Local/SwitchCamera.tsx +7 -6
- package/template/agora-rn-uikit/src/Controls/LocalControls.tsx +5 -5
- package/template/agora-rn-uikit/src/Controls/Remote/RemoteAudioMute.tsx +5 -4
- package/template/agora-rn-uikit/src/Controls/Remote/RemoteSwap.tsx +3 -1
- package/template/agora-rn-uikit/src/Controls/Remote/RemoteVideoMute.tsx +5 -4
- package/template/agora-rn-uikit/src/Controls/RemoteControls.tsx +2 -2
- package/template/agora-rn-uikit/src/Reducer/ActiveSpeaker.ts +30 -0
- package/template/agora-rn-uikit/src/Reducer/LocalMuteAudio.ts +8 -6
- package/template/agora-rn-uikit/src/Reducer/LocalMuteVideo.ts +8 -6
- package/template/agora-rn-uikit/src/Reducer/LocalPermissionState.ts +23 -0
- package/template/agora-rn-uikit/src/Reducer/RemoteAudioStateChanged.ts +7 -7
- package/template/agora-rn-uikit/src/Reducer/RemoteVideoStateChanged.ts +9 -8
- package/template/agora-rn-uikit/src/Reducer/UpdateDualStreamMode.ts +7 -7
- package/template/agora-rn-uikit/src/Reducer/UserJoined.ts +24 -14
- package/template/agora-rn-uikit/src/Reducer/UserMuteRemoteAudio.ts +6 -6
- package/template/agora-rn-uikit/src/Reducer/UserMuteRemoteVideo.ts +6 -6
- package/template/agora-rn-uikit/src/Reducer/UserOffline.ts +14 -5
- package/template/agora-rn-uikit/src/Reducer/UserPin.ts +28 -0
- package/template/agora-rn-uikit/src/Reducer/UserSecondaryPin.ts +23 -0
- package/template/agora-rn-uikit/src/Reducer/index.ts +4 -0
- package/template/agora-rn-uikit/src/Rtc/Create.tsx +197 -66
- package/template/agora-rn-uikit/src/Rtc/Join.tsx +60 -33
- package/template/agora-rn-uikit/src/RtcConfigure.tsx +194 -57
- package/template/agora-rn-uikit/src/Utils/isBotUser.ts +15 -0
- package/template/agora-rn-uikit/src/Utils/quality.tsx +8 -0
- package/template/agora-rn-uikit/src/Views/MaxVideoView.native.tsx +67 -13
- package/template/agora-rn-uikit/src/Views/MaxVideoView.tsx +53 -17
- package/template/agora-rn-uikit/src/Views/MinVideoView.tsx +19 -11
- package/template/agora-rn-uikit/src/index.ts +19 -10
- package/template/android/app/build.gradle +67 -155
- package/template/android/app/src/debug/AndroidManifest.xml +6 -1
- package/template/android/app/src/debug/java/com/helloworld/ReactNativeFlipper.java +7 -4
- package/template/android/app/src/main/AndroidManifest.xml +21 -27
- 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/java/com/helloworld/MainActivity.java +67 -0
- package/template/android/app/src/main/java/com/helloworld/MainApplication.java +22 -36
- package/template/android/app/src/main/java/com/helloworld/SSLPinningFactory.java +30 -0
- package/template/android/app/src/main/res/values/colors.xml +7 -0
- package/template/android/app/src/main/res/values/strings.xml +3 -0
- package/template/android/app/src/release/java/com/helloworld/ReactNativeFlipper.java +20 -0
- package/template/android/build.gradle +20 -31
- package/template/android/gradle/wrapper/gradle-wrapper.jar +0 -0
- package/template/android/gradle/wrapper/gradle-wrapper.properties +3 -2
- package/template/android/gradle.properties +18 -4
- package/template/android/gradlew +165 -104
- package/template/android/gradlew.bat +12 -23
- package/template/android/link-assets-manifest.json +13 -0
- package/template/android/settings.gradle +1 -0
- package/template/babel.config.js +1 -0
- package/template/bridge/rtc/webNg/RtcEngine.ts +940 -98
- package/template/bridge/rtc/webNg/{SurfaceView.tsx → RtcSurfaceView.tsx} +20 -27
- package/template/bridge/rtc/webNg/Types.ts +20 -5
- package/template/bridge/rtc/webNg/index.ts +81 -14
- package/template/bridge/rtm/web/index.ts +86 -35
- package/template/configTransform.js +16 -1
- package/template/customization-api/action-library.ts +4 -16
- package/template/customization-api/app-state.ts +18 -8
- package/template/customization-api/atoms.ts +8 -0
- package/template/customization-api/customEvents.ts +7 -2
- package/template/customization-api/customize.ts +30 -11
- package/template/customization-api/index.ts +5 -0
- package/template/customization-api/sub-components.ts +43 -18
- package/template/customization-api/temp.ts +51 -0
- package/template/customization-api/typeDefinition.ts +65 -49
- package/template/customization-api/types.ts +48 -0
- package/template/customization-api/utils.ts +19 -1
- package/template/customization-implementation/createHook.ts +24 -6
- package/template/customization-implementation/index.ts +1 -2
- package/template/customization-implementation/useCustomization.tsx +5 -7
- package/template/defaultConfig.js +84 -0
- package/template/electron/index.html +27 -27
- package/template/electron/renderer/index.js +1 -0
- package/template/global.d.ts +97 -6
- package/template/index.js +18 -1
- package/template/index.rsdk.tsx +1 -0
- package/template/index.web.js +1 -0
- package/template/index.wsdk.tsx +2 -13
- package/template/ios/.xcode.env +11 -0
- package/template/ios/HelloWorld/AppDelegate.h +2 -4
- package/template/ios/HelloWorld/AppDelegate.mm +64 -0
- package/template/ios/HelloWorld/HelloWorldDebug.entitlements +10 -0
- package/template/ios/HelloWorld/Info.plist +20 -1
- package/template/ios/HelloWorld/main.m +2 -1
- package/template/ios/HelloWorld.xcodeproj/project.pbxproj +596 -11
- package/template/ios/HelloWorld.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist +8 -0
- package/template/ios/HelloWorld.xcodeproj/xcshareddata/xcschemes/ScreenSharing.xcscheme +95 -0
- package/template/ios/HelloWorld.xcworkspace/contents.xcworkspacedata +10 -0
- package/template/ios/HelloWorld.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist +8 -0
- package/template/ios/HelloWorldTests/HelloWorldTests.m +14 -13
- package/template/ios/HelloWorldTests/Info.plist +2 -2
- package/template/ios/Podfile +54 -20
- package/template/ios/Podfile.lock +975 -0
- package/template/ios/ScreenSharing/Info.plist +15 -0
- package/template/ios/ScreenSharing/SampleHandler.h +5 -0
- package/template/ios/ScreenSharing/SampleHandler.m +39 -0
- package/template/ios/link-assets-manifest.json +13 -0
- package/template/jest.config.js +4 -0
- package/template/metro.config.js +7 -32
- package/template/package-lock.json +57746 -0
- package/template/package.json +71 -35
- package/template/react-native-toast-message/index.d.ts +46 -44
- package/template/react-native-toast-message/index.js +1 -0
- package/template/react-native-toast-message/package-lock.json +10553 -0
- package/template/react-native-toast-message/src/colors/index.js +3 -2
- package/template/react-native-toast-message/src/components/base/index.js +38 -63
- package/template/react-native-toast-message/src/components/base/styles.js +20 -39
- package/template/react-native-toast-message/src/components/checkbox.js +183 -0
- package/template/react-native-toast-message/src/components/error.js +3 -2
- package/template/react-native-toast-message/src/components/info.js +3 -2
- package/template/react-native-toast-message/src/components/success.js +3 -2
- package/template/react-native-toast-message/src/index.js +125 -32
- package/template/react-native-toast-message/src/index.sdk.tsx +129 -36
- package/template/react-native-toast-message/src/styles.js +3 -4
- package/template/react-native-toast-message/src/styles.sdk.ts +3 -4
- package/template/react-native.config.js +7 -0
- package/template/src/App.tsx +53 -63
- package/template/src/AppRoutes.tsx +101 -0
- package/template/src/AppWrapper.tsx +83 -29
- package/template/src/SDKAppWrapper.tsx +145 -58
- package/template/src/app-state/useBeautyEffects.ts +30 -0
- package/template/src/app-state/useLocalUserInfo.ts +3 -3
- package/template/src/app-state/useMessages.ts +49 -9
- package/template/src/app-state/useNoiseSupression.native.tsx +73 -0
- package/template/src/app-state/useNoiseSupression.tsx +151 -0
- package/template/src/app-state/useVideoQuality.tsx +182 -0
- package/template/src/app-state/useVirtualBackground.ts +152 -0
- package/template/src/assets/font-styles.css +677 -0
- 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 +3491 -0
- package/template/src/atoms/ActionMenu.tsx +326 -0
- package/template/src/atoms/AnimatedActiveSpeaker.native.tsx +71 -0
- package/template/src/atoms/AnimatedActiveSpeaker.tsx +84 -0
- package/template/src/atoms/AnimatedRings.native.tsx +68 -0
- package/template/src/atoms/AnimatedRings.tsx +70 -0
- package/template/src/atoms/Avatar.tsx +51 -0
- package/template/src/atoms/Card.tsx +74 -0
- package/template/src/atoms/Carousel.native.tsx +105 -0
- package/template/src/atoms/Carousel.tsx +109 -0
- package/template/src/atoms/Checkbox.tsx +98 -0
- package/template/src/atoms/CircularProgress.native.tsx +121 -0
- package/template/src/atoms/CircularProgress.tsx +101 -0
- package/template/src/atoms/ClipboardIconButton.tsx +91 -0
- package/template/src/atoms/CustomIcon.tsx +153 -0
- package/template/src/atoms/CustomSwitch.tsx +287 -0
- package/template/src/atoms/DropDownMulti.tsx +349 -0
- package/template/src/atoms/Dropdown.tsx +307 -0
- package/template/src/atoms/HorizontalRule.tsx +3 -1
- package/template/src/atoms/IconButton.tsx +205 -0
- package/template/src/atoms/ImageIcon.tsx +127 -0
- package/template/src/atoms/InfoBubble.tsx +291 -0
- package/template/src/atoms/InlineNotification.tsx +81 -0
- package/template/src/atoms/InlinePopup.tsx +185 -0
- package/template/src/atoms/Input.tsx +87 -0
- package/template/src/atoms/InviteInfo.tsx +166 -0
- package/template/src/atoms/LinkButton.tsx +29 -0
- package/template/src/atoms/MeetingLink.tsx +160 -0
- package/template/src/atoms/OutlineButton.tsx +61 -0
- package/template/src/atoms/ParticipantsCount.tsx +78 -0
- package/template/src/atoms/Popup.tsx +178 -0
- package/template/src/atoms/PrimaryButton.tsx +65 -26
- package/template/src/atoms/RecordingInfo.tsx +47 -0
- package/template/src/atoms/SecondaryButton.tsx +10 -5
- package/template/src/atoms/Spacer.tsx +23 -0
- package/template/src/atoms/TertiaryButton.tsx +108 -0
- package/template/src/atoms/TextInput.tsx +13 -14
- package/template/src/atoms/Toggle.tsx +47 -0
- package/template/src/atoms/Toolbar.tsx +94 -0
- package/template/src/atoms/ToolbarItem.tsx +99 -0
- package/template/src/atoms/ToolbarMenu.tsx +40 -0
- package/template/src/atoms/ToolbarMenuItem.tsx +104 -0
- package/template/src/atoms/ToolbarPreset.tsx +147 -0
- package/template/src/atoms/Tooltip.native.tsx +65 -0
- package/template/src/atoms/Tooltip.tsx +111 -0
- package/template/src/atoms/UserAvatar.tsx +60 -0
- package/template/src/atoms/pagination/Pagination.tsx +127 -0
- package/template/src/atoms/pagination/usePagination.tsx +88 -0
- package/template/src/auth/AuthProvider.tsx +710 -0
- package/template/src/auth/AuthRoute.tsx +94 -0
- package/template/src/auth/IDPAuth.electron.tsx +32 -0
- package/template/src/auth/IDPAuth.tsx +73 -0
- package/template/src/auth/IDPLogoutComponent.tsx +158 -0
- package/template/src/auth/UserCancelPopup.tsx +115 -0
- package/template/src/auth/config.ts +53 -0
- package/template/src/auth/openIDPURL.electron.tsx +39 -0
- package/template/src/auth/openIDPURL.native.tsx +62 -0
- package/template/src/auth/openIDPURL.tsx +20 -0
- package/template/src/auth/useIDPAuth.electron.tsx +125 -0
- package/template/src/auth/useIDPAuth.native.tsx +130 -0
- package/template/src/auth/useIDPAuth.tsx +124 -0
- package/template/src/auth/useTokenAuth.tsx +267 -0
- package/template/src/components/Chat.tsx +177 -279
- package/template/src/components/ChatContext.ts +22 -1
- package/template/src/components/ColorConfigure.tsx +1 -2
- package/template/src/components/ColorContext.ts +1 -1
- package/template/src/components/CommonStyles.ts +51 -0
- package/template/src/components/Controls.tsx +1275 -108
- package/template/src/components/{Controls.native.tsx → Controls1.native.tsx} +15 -9
- package/template/src/components/CustomSidePanel.tsx +82 -0
- package/template/src/components/DeviceConfigure.native.tsx +2 -2
- package/template/src/components/DeviceConfigure.tsx +789 -122
- package/template/src/components/DeviceContext.tsx +10 -4
- package/template/src/components/EventsConfigure.tsx +773 -12
- package/template/src/components/GraphQLProvider.tsx +83 -37
- package/template/src/components/GridVideo.tsx +86 -53
- package/template/src/components/HostControlView.tsx +118 -42
- package/template/src/components/JoinPhrase.tsx +0 -1
- package/template/src/components/Leftbar.tsx +129 -0
- package/template/src/components/Navbar.tsx +469 -488
- package/template/src/components/NavbarMobile.tsx +138 -0
- package/template/src/components/Navigation.native.tsx +1 -14
- package/template/src/components/{Settings.native.tsx → Navigation.sdk.tsx} +17 -6
- package/template/src/components/NetworkQualityContext.tsx +32 -26
- package/template/src/components/ParticipantsView.tsx +195 -165
- package/template/src/components/PinnedVideo.tsx +317 -122
- package/template/src/components/Precall.native.tsx +472 -116
- package/template/src/components/Precall.tsx +493 -154
- package/template/src/components/RTMConfigure.tsx +477 -83
- package/template/src/components/Rightbar.tsx +129 -0
- package/template/src/components/Router.electron.ts +2 -0
- package/template/src/components/Router.native.ts +2 -0
- package/template/src/components/Router.sdk.ts +2 -0
- package/template/src/components/Router.ts +2 -0
- package/template/src/components/SdkApiContext.tsx +319 -0
- package/template/src/components/SdkMuteToggleListener.tsx +88 -0
- package/template/src/components/SessionContext.tsx +0 -1
- package/template/src/components/Settings.tsx +51 -114
- package/template/src/components/SettingsView.tsx +293 -54
- package/template/src/components/Share.tsx +415 -297
- package/template/src/components/StorageContext.tsx +82 -7
- package/template/src/components/ToastComponent.tsx +17 -0
- package/template/src/components/WhiteboardLayout.tsx +291 -0
- package/template/src/components/beauty-effect/useBeautyEffects.native.tsx +119 -0
- package/template/src/components/beauty-effect/useBeautyEffects.tsx +152 -0
- package/template/src/components/chat/chatConfigure.native.tsx +511 -0
- package/template/src/components/chat/chatConfigure.tsx +529 -0
- package/template/src/components/chat-messages/useChatMessages.tsx +513 -386
- package/template/src/components/chat-ui/useChatUIControls.tsx +132 -0
- package/template/src/components/common/Error.tsx +36 -6
- package/template/src/components/common/Logo.tsx +16 -15
- package/template/src/components/contexts/LiveStreamDataContext.tsx +23 -17
- package/template/src/components/contexts/ScreenShareContext.tsx +15 -1
- package/template/src/components/contexts/VideoMeetingDataContext.tsx +41 -11
- package/template/src/components/contexts/WaitingRoomContext.tsx +61 -0
- package/template/src/components/contexts/WhiteboardContext.tsx +54 -54
- package/template/src/components/disable-chat/useDisableChat.tsx +32 -0
- package/template/src/components/livestream/LiveStreamContext.tsx +493 -165
- package/template/src/components/livestream/Types.ts +58 -17
- package/template/src/components/livestream/index.ts +1 -0
- package/template/src/components/livestream/views/LiveStreamAttendeeLandingTile.tsx +295 -0
- package/template/src/components/livestream/views/LiveStreamControls.tsx +8 -4
- package/template/src/components/meeting-info-invite/MeetingInfo.tsx +82 -0
- package/template/src/components/meeting-info-invite/MeetingInfoCardHeader.tsx +86 -0
- package/template/src/components/meeting-info-invite/MeetingInfoGridTile.tsx +221 -0
- package/template/src/components/meeting-info-invite/MeetingInfoLinks.tsx +122 -0
- package/template/src/components/participants/AllAudienceParticipants.tsx +105 -35
- package/template/src/components/participants/AllHostParticipants.tsx +108 -38
- package/template/src/components/participants/Participant.tsx +330 -0
- package/template/src/components/participants/ParticipantName.tsx +13 -7
- package/template/src/components/participants/ParticipantSectionTitle.tsx +38 -10
- package/template/src/components/participants/ScreenshareParticipants.tsx +142 -12
- package/template/src/components/participants/UserActionMenuOptions.tsx +510 -0
- package/template/src/components/participants/WaitingRoomParticipants.tsx +74 -0
- package/template/src/components/popups/InvitePopup.tsx +196 -0
- package/template/src/components/popups/StartScreenSharePopup.native.tsx +182 -0
- package/template/src/components/popups/StartScreenSharePopup.tsx +6 -0
- package/template/src/components/popups/StopRecordingPopup.tsx +120 -0
- package/template/src/components/popups/StopScreenSharePopup.native.tsx +135 -0
- package/template/src/components/popups/StopScreenSharePopup.tsx +6 -0
- package/template/src/components/popups/WhiteboardClearAllPopup.tsx +123 -0
- package/template/src/components/precall/LocalMute.tsx +109 -15
- package/template/src/components/precall/{LocalMute.native.tsx → LocalMute1.native.tsx} +21 -5
- package/template/src/components/precall/PermissionHelper.native.tsx +5 -0
- package/template/src/components/precall/PermissionHelper.tsx +154 -0
- package/template/src/components/precall/PreCallSettings.tsx +53 -0
- package/template/src/components/precall/VideoFallback.tsx +173 -0
- package/template/src/components/precall/VideoPreview.native.tsx +19 -8
- package/template/src/components/precall/VideoPreview.tsx +28 -7
- package/template/src/components/precall/index.tsx +2 -0
- package/template/src/components/precall/joinCallBtn.native.tsx +12 -5
- package/template/src/components/precall/joinCallBtn.tsx +34 -6
- package/template/src/components/precall/joinWaitingRoomBtn.native.tsx +215 -0
- package/template/src/components/precall/joinWaitingRoomBtn.tsx +255 -0
- package/template/src/components/precall/meetingTitle.tsx +42 -13
- package/template/src/components/precall/selectDevice.tsx +5 -25
- package/template/src/components/precall/textInput.tsx +40 -14
- package/template/src/components/precall/usePreCall.tsx +66 -2
- package/template/src/components/recording-bot/RecordingBotRoute.tsx +48 -0
- package/template/src/components/recordings/RecordingsDateTable.tsx +62 -0
- package/template/src/components/recordings/RecordingsModal.tsx +135 -0
- package/template/src/components/recordings/ViewRecordingsModal.tsx +51 -0
- package/template/src/components/recordings/recording-table.tsx +250 -0
- package/template/src/components/recordings/style.ts +238 -0
- package/template/src/components/recordings/utils.ts +122 -0
- package/template/src/components/room-info/useRoomInfo.tsx +142 -0
- package/template/src/components/{meeting-info/useSetMeetingInfo.tsx → room-info/useSetRoomInfo.tsx} +12 -12
- package/template/src/components/styles.ts +42 -21
- package/template/src/components/useShareLink.tsx +33 -70
- package/template/src/{utils/useButtonTemplate.tsx → components/useToast.tsx} +18 -20
- package/template/src/components/useUserPreference.tsx +157 -16
- package/template/src/components/useVideoCall.tsx +157 -0
- package/template/src/components/useWakeLock.tsx +18 -4
- package/template/src/components/virtual-background/VBButton.tsx +62 -0
- package/template/src/components/virtual-background/VBCard.native.tsx +280 -0
- package/template/src/components/virtual-background/VBCard.tsx +308 -0
- package/template/src/components/virtual-background/VBPanel.tsx +282 -0
- package/template/src/components/virtual-background/VButils.native.ts +72 -0
- package/template/src/components/virtual-background/VButils.ts +144 -0
- package/template/src/components/virtual-background/VideoPreview.native.tsx +43 -0
- package/template/src/components/virtual-background/VideoPreview.tsx +116 -0
- package/template/src/components/virtual-background/imagePaths.ts +82 -0
- package/template/src/components/virtual-background/images/beachImageBase64.ts +1 -0
- package/template/src/components/virtual-background/images/bedroomImageBase64.ts +1 -0
- package/template/src/components/virtual-background/images/bookImageBase64.ts +1 -0
- package/template/src/components/virtual-background/images/earthImageBase64.ts +1 -0
- package/template/src/components/virtual-background/images/index.ts +37 -0
- package/template/src/components/virtual-background/images/lampImageBase64.ts +1 -0
- package/template/src/components/virtual-background/images/mountainsImageBase64.ts +1 -0
- package/template/src/components/virtual-background/images/office1ImageBase64.ts +1 -0
- package/template/src/components/virtual-background/images/officeImageBase64.ts +1 -0
- package/template/src/components/virtual-background/images/plantsImageBase64.ts +1 -0
- package/template/src/components/virtual-background/images/skyImageBase64.ts +1 -0
- package/template/src/components/virtual-background/images/wallImageBase64.ts +1 -0
- package/template/src/components/virtual-background/useVB.native.tsx +205 -0
- package/template/src/components/virtual-background/useVB.tsx +294 -0
- package/template/src/components/whiteboard/StrokeWidthTool.tsx +137 -0
- package/template/src/components/whiteboard/WhiteboardButton.tsx +93 -0
- package/template/src/components/whiteboard/WhiteboardCanvas.tsx +99 -0
- package/template/src/components/whiteboard/WhiteboardConfigure.native.tsx +148 -0
- package/template/src/components/whiteboard/WhiteboardConfigure.tsx +473 -0
- package/template/src/components/whiteboard/WhiteboardCursor.tsx +152 -0
- package/template/src/components/whiteboard/WhiteboardToolBox.tsx +1448 -0
- package/template/src/components/whiteboard/WhiteboardView.native.tsx +212 -0
- package/template/src/components/whiteboard/WhiteboardView.tsx +81 -0
- package/template/src/components/whiteboard/WhiteboardWidget.tsx +729 -0
- package/template/src/components/whiteboard/WhiteboardWrapper.tsx +38 -0
- package/template/src/language/default-labels/commonLabels.ts +51 -14
- package/template/src/language/default-labels/createScreenLabels.ts +97 -17
- package/template/src/language/default-labels/joinScreenLabels.ts +45 -6
- package/template/src/language/default-labels/precallScreenLabels.ts +158 -25
- package/template/src/language/default-labels/shareLinkScreenLabels.ts +85 -37
- package/template/src/language/default-labels/videoCallScreenLabels.ts +1290 -158
- package/template/src/language/i18nTypes.ts +1 -1
- package/template/src/language/useLanguage.tsx +10 -4
- package/template/src/logger/AppBuilderLogger.tsx +313 -0
- package/template/src/logger/constants.ts +18 -0
- package/template/src/logger/transports/agora-transport.native.ts +64 -0
- package/template/src/logger/transports/agora-transport.ts +36 -0
- package/template/src/logger/transports/customer-transport.ts +162 -0
- package/template/src/pages/Authenticate.tsx +5 -15
- package/template/src/pages/Create.tsx +394 -202
- package/template/src/pages/Endcall.tsx +153 -0
- package/template/src/pages/Join.tsx +188 -78
- package/template/src/pages/Login.tsx +26 -0
- package/template/src/pages/VideoCall.tsx +381 -130
- package/template/src/pages/video-call/ActionSheet.native.tsx +343 -0
- package/template/src/pages/video-call/ActionSheet.tsx +349 -0
- package/template/src/pages/video-call/ActionSheetContent.tsx +655 -0
- package/template/src/pages/video-call/ActionSheetHandle.tsx +54 -0
- package/template/src/pages/video-call/ActionSheetStyles.css +138 -0
- package/template/src/pages/video-call/DefaultLayouts.ts +32 -12
- package/template/src/pages/video-call/NameWithMicIcon.tsx +104 -51
- package/template/src/pages/video-call/PinchableView.tsx +119 -0
- package/template/src/pages/video-call/RenderComponent.tsx +16 -31
- package/template/src/pages/video-call/SidePanelHeader.tsx +424 -0
- package/template/src/pages/video-call/VideoCallMobileView.tsx +299 -0
- package/template/src/pages/video-call/VideoCallScreen.native.tsx +38 -0
- package/template/src/pages/video-call/VideoCallScreen.tsx +379 -74
- package/template/src/pages/video-call/VideoCallScreenWrapper.tsx +51 -0
- package/template/src/pages/video-call/VideoComponent.tsx +81 -6
- package/template/src/pages/video-call/VideoRenderer.tsx +525 -63
- package/template/src/pages/video-call/VisibilitySensor.tsx +104 -0
- package/template/src/pages/video-call/ZoomableWrapper.native.tsx +34 -0
- package/template/src/pages/video-call/ZoomableWrapper.tsx +5 -0
- package/template/src/pages/video-call/index.ts +51 -7
- package/template/src/rtm/RTMEngine.ts +22 -4
- package/template/src/rtm-events/constants.ts +26 -9
- package/template/src/rtm-events-api/Events.ts +114 -23
- package/template/src/rtm-events-api/LocalEvents.ts +15 -0
- package/template/src/rtm-events-api/types.ts +10 -5
- package/template/src/selection.json +1 -0
- package/template/src/subComponents/BlockUI.tsx +70 -0
- package/template/src/subComponents/ChatBubble.tsx +413 -96
- package/template/src/subComponents/ChatContainer.tsx +305 -101
- package/template/src/subComponents/ChatInput.native.tsx +269 -0
- package/template/src/subComponents/ChatInput.tsx +308 -156
- package/template/src/subComponents/Checkbox.native.tsx +46 -35
- package/template/src/subComponents/Checkbox.tsx +9 -8
- package/template/src/subComponents/CopyJoinInfo.tsx +52 -62
- package/template/src/subComponents/EndcallPopup.tsx +182 -0
- package/template/src/subComponents/FallbackLogo.tsx +122 -40
- package/template/src/subComponents/LanguageSelector.tsx +35 -31
- package/template/src/subComponents/LayoutIconButton.tsx +210 -0
- package/template/src/subComponents/LayoutIconDropdown.tsx +149 -133
- package/template/src/subComponents/{LayoutIconDropdown.native.tsx → LayoutIconDropdown1.native.tsx} +4 -18
- package/template/src/subComponents/Loading.tsx +60 -0
- package/template/src/subComponents/LocalAudioMute.tsx +181 -30
- package/template/src/subComponents/LocalEndCall.tsx +118 -36
- package/template/src/subComponents/LocalSwitchCamera.tsx +72 -40
- package/template/src/subComponents/LocalVideoMute.tsx +177 -30
- package/template/src/subComponents/Logo.tsx +3 -4
- package/template/src/subComponents/LogoutButton.tsx +2 -2
- package/template/src/subComponents/NetworkQualityPill.tsx +65 -84
- package/template/src/subComponents/OpenInNativeButton.tsx +3 -3
- package/template/src/subComponents/Recording.tsx +44 -31
- package/template/src/subComponents/RemoteAudioMute.tsx +83 -29
- package/template/src/subComponents/RemoteEndCall.tsx +8 -5
- package/template/src/subComponents/RemoteMutePopup.tsx +115 -0
- package/template/src/subComponents/RemoteVideoMute.tsx +74 -21
- package/template/src/subComponents/RemoveMeetingPopup.tsx +122 -0
- package/template/src/subComponents/RemoveScreensharePopup.tsx +124 -0
- package/template/src/subComponents/ScreenShareNotice.tsx +95 -12
- package/template/src/subComponents/SelectDevice.tsx +548 -66
- package/template/src/subComponents/SelectDeviceSettings.backup.tsx +210 -0
- package/template/src/subComponents/SelectOAuth.tsx +9 -8
- package/template/src/subComponents/SidePanelButtons.ts +0 -3
- package/template/src/subComponents/SidePanelEnum.tsx +6 -4
- package/template/src/subComponents/SidePanelHeader.tsx +146 -0
- package/template/src/subComponents/ToastConfig.tsx +160 -11
- package/template/src/subComponents/caption/Caption.tsx +132 -0
- package/template/src/subComponents/caption/CaptionContainer.tsx +331 -0
- package/template/src/subComponents/caption/CaptionIcon.tsx +115 -0
- package/template/src/subComponents/caption/CaptionText.tsx +182 -0
- package/template/src/subComponents/caption/DownloadTranscriptBtn.tsx +65 -0
- package/template/src/subComponents/caption/LanguageSelectorPopup.tsx +192 -0
- package/template/src/subComponents/caption/Transcript.tsx +452 -0
- package/template/src/subComponents/caption/TranscriptIcon.tsx +126 -0
- package/template/src/subComponents/caption/TranscriptText.tsx +98 -0
- package/template/src/subComponents/caption/index.ts +3 -0
- package/template/src/subComponents/caption/proto/ptoto.js +91 -0
- package/template/src/subComponents/caption/proto/test.proto +23 -0
- package/template/src/subComponents/caption/useCaption.tsx +123 -0
- package/template/src/subComponents/caption/useCaptionWidth.ts +27 -0
- package/template/src/subComponents/caption/useSTTAPI.tsx +275 -0
- package/template/src/subComponents/caption/useStreamMessageUtils.native.ts +211 -0
- package/template/src/subComponents/caption/useStreamMessageUtils.ts +235 -0
- package/template/src/subComponents/caption/useTranscriptDownload.native.ts +93 -0
- package/template/src/subComponents/caption/useTranscriptDownload.ts +62 -0
- package/template/src/subComponents/caption/utils.ts +126 -0
- package/template/src/subComponents/chat/ChatActionMenu.tsx +224 -0
- package/template/src/subComponents/chat/ChatAttachment.native.tsx +237 -0
- package/template/src/subComponents/chat/ChatAttachment.tsx +205 -0
- package/template/src/subComponents/chat/ChatEmoji.native.tsx +75 -0
- package/template/src/subComponents/chat/ChatEmoji.tsx +182 -0
- package/template/src/subComponents/chat/ChatParticipants.tsx +232 -81
- package/template/src/subComponents/chat/ChatSendButton.tsx +209 -0
- package/template/src/subComponents/chat/ChatUploadStatus.tsx +84 -0
- package/template/src/subComponents/chat/ImagePopup.tsx +400 -0
- package/template/src/subComponents/livestream/ApprovedLiveStreamControlsView.tsx +2 -2
- package/template/src/subComponents/livestream/CurrentLiveStreamRequestsView.tsx +109 -47
- package/template/src/subComponents/livestream/controls/LocalRaiseHand.tsx +61 -45
- package/template/src/subComponents/livestream/controls/RemoteLiveStreamApprovedRequestRecall.tsx +9 -8
- package/template/src/subComponents/livestream/controls/RemoteLiveStreamRequestApprove.tsx +29 -12
- package/template/src/subComponents/livestream/controls/RemoteLiveStreamRequestReject.tsx +33 -17
- package/template/src/subComponents/recording/useIsRecordingBot.tsx +76 -0
- package/template/src/subComponents/recording/useRecording.tsx +761 -108
- package/template/src/subComponents/recording/useRecordingLayoutQuery.tsx +93 -9
- package/template/src/subComponents/screenshare/ScreenshareButton.tsx +82 -75
- package/template/src/subComponents/screenshare/ScreenshareConfigure.native.tsx +494 -78
- package/template/src/subComponents/screenshare/ScreenshareConfigure.tsx +247 -110
- package/template/src/subComponents/screenshare/useScreenshare.tsx +6 -4
- package/template/src/subComponents/waiting-rooms/WaitingRoomControls.tsx +85 -0
- package/template/src/subComponents/waiting-rooms/useWaitingRoomAPI.ts +126 -0
- package/template/src/theme/index.ts +59 -0
- package/template/src/utils/PlatformWrapper.tsx +21 -0
- package/template/src/utils/SdkEvents.ts +37 -14
- package/template/src/utils/SdkMethodEvents.ts +105 -0
- package/template/src/utils/axiomLogger.ts +122 -0
- package/template/src/utils/book.jpg +0 -0
- package/template/src/utils/common.tsx +350 -7
- package/template/src/utils/constants.ts +4 -0
- package/template/src/utils/fetch-retry.ts +23 -0
- package/template/src/utils/getCustomRoute.ts +7 -0
- package/template/src/utils/hexadecimalTransparency.ts +108 -0
- package/template/src/utils/index.tsx +83 -0
- package/template/src/utils/isMobileOrTablet.ts +7 -2
- package/template/src/utils/pendingStateUpdateHelper.ts +19 -0
- package/template/src/utils/useActionSheet.tsx +50 -0
- package/template/src/utils/useActiveSpeaker.ts +38 -0
- package/template/src/utils/useAppState.ts +17 -0
- package/template/src/utils/useAsyncEffect.ts +138 -0
- package/template/src/utils/useCreateRoom.ts +152 -0
- package/template/src/utils/useEndCall.ts +74 -0
- package/template/src/utils/useFindActiveSpeaker.native.ts +4 -0
- package/template/src/utils/useFindActiveSpeaker.ts +373 -0
- package/template/src/utils/useFocus.tsx +51 -0
- package/template/src/utils/useFullScreen.native.ts +12 -0
- package/template/src/utils/useFullScreen.ts +161 -0
- package/template/src/utils/useGetMeetingPhrase.ts +61 -10
- package/template/src/utils/useIsAudioEnabled.ts +3 -3
- package/template/src/utils/useIsHandRaised.ts +13 -0
- package/template/src/utils/useIsLocalUserSpeaking.native.ts +4 -0
- package/template/src/utils/useIsLocalUserSpeaking.ts +119 -0
- package/template/src/utils/useIsPSTN.ts +3 -3
- package/template/src/utils/useIsVideoEnabled.ts +3 -3
- package/template/src/utils/useJoinRoom.ts +304 -0
- package/template/src/utils/useLayout.tsx +9 -3
- package/template/src/utils/useLocalAudio.ts +69 -0
- package/template/src/utils/useLocalVideo.ts +69 -0
- package/template/src/{subComponents/screenshare/ScreenshareButton.native.tsx → utils/useMenu.tsx} +16 -3
- package/template/src/utils/useModal.tsx +8 -0
- package/template/src/utils/useMutePSTN.ts +45 -2
- package/template/src/utils/useMuteToggleLocal.ts +125 -49
- package/template/src/utils/useOrientation.native.tsx +3 -0
- package/template/src/utils/useOrientation.tsx +59 -0
- package/template/src/utils/useRemoteEndCall.ts +4 -4
- package/template/src/utils/useRemoteEndScreenshare.ts +26 -0
- package/template/src/utils/useRemoteMute.ts +7 -7
- package/template/src/utils/useRemoteRequest.ts +84 -0
- package/template/src/utils/useSearchParams.tsx +28 -0
- package/template/src/utils/useSidePanel.tsx +16 -5
- package/template/src/utils/useSpeechToText.ts +102 -0
- package/template/src/utils/useString.ts +19 -7
- package/template/src/utils/useSwitchCamera.native.tsx +25 -0
- package/template/src/utils/useSwitchCamera.tsx +19 -0
- package/template/src/utils/useToolbar.tsx +59 -0
- package/template/src/wasms/agora-virtual-background.wasm +0 -0
- package/template/static.d.ts +42 -0
- package/template/tsconfig_rsdk_index.json +3 -3
- package/template/tsconfig_wsdk_index.json +3 -3
- package/template/web/index.html +45 -17
- package/template/webpack.commons.js +16 -0
- package/template/webpack.rsdk.config.js +1 -2
- package/template/webpack.web.config.js +8 -3
- package/template/_buckconfig +0 -6
- package/template/_gitattributes +0 -1
- package/template/agora-rn-uikit/src/Contexts/RenderContext.tsx +0 -10
- package/template/android/app/_BUCK +0 -55
- package/template/android/app/build_defs.bzl +0 -19
- package/template/bridge/rtc/webNg/LocalView.tsx +0 -20
- package/template/ios/HelloWorld/AppDelegate.m +0 -74
- package/template/src/assets/icons.ts +0 -102
- package/template/src/components/OAuth.electron.tsx +0 -40
- package/template/src/components/OAuth.native.tsx +0 -53
- package/template/src/components/OAuth.tsx +0 -29
- package/template/src/components/OAuthConfig.ts +0 -77
- package/template/src/components/StoreToken.tsx +0 -38
- package/template/src/components/chat-ui/useChatUIControl.tsx +0 -69
- package/template/src/components/meeting-info/useMeetingInfo.tsx +0 -70
- package/template/src/components/participants/MeParticipant.tsx +0 -38
- package/template/src/components/participants/RemoteParticipants.tsx +0 -71
- package/template/src/pages/video-call/CustomUserContextHolder.tsx +0 -20
- package/template/src/utils/useCreateMeeting.ts +0 -88
- package/template/src/utils/useJoinMeeting.ts +0 -132
|
@@ -1,53 +0,0 @@
|
|
|
1
|
-
/*
|
|
2
|
-
********************************************
|
|
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.
|
|
10
|
-
*********************************************
|
|
11
|
-
*/
|
|
12
|
-
import React from 'react';
|
|
13
|
-
import {Linking} from 'react-native';
|
|
14
|
-
import InAppBrowser from 'react-native-inappbrowser-reborn';
|
|
15
|
-
import {useHistory} from './Router';
|
|
16
|
-
import SelectOAuth from '../subComponents/SelectOAuth';
|
|
17
|
-
|
|
18
|
-
import {url, oAuthSystemType} from './OAuthConfig';
|
|
19
|
-
|
|
20
|
-
const processUrl = (url: string): string => {
|
|
21
|
-
return url
|
|
22
|
-
.replace(`${$config.PRODUCT_ID.toLowerCase()}://my-host`, '')
|
|
23
|
-
.replace($config.FRONTEND_ENDPOINT, '');
|
|
24
|
-
};
|
|
25
|
-
|
|
26
|
-
const Oauth = () => {
|
|
27
|
-
let history = useHistory();
|
|
28
|
-
|
|
29
|
-
const onSelectOAuthSystem = async ({
|
|
30
|
-
oAuthSystem,
|
|
31
|
-
}: {
|
|
32
|
-
oAuthSystem: oAuthSystemType;
|
|
33
|
-
}) => {
|
|
34
|
-
try {
|
|
35
|
-
// const url = `https://deep-link-tester.netlify.app`;
|
|
36
|
-
const oAuthUrl = url({platform: 'mobile'})[`${oAuthSystem}Url`];
|
|
37
|
-
if (await InAppBrowser.isAvailable()) {
|
|
38
|
-
const result = await InAppBrowser.openAuth(oAuthUrl, oAuthUrl);
|
|
39
|
-
if (result.type === 'success') {
|
|
40
|
-
history.push(processUrl(result.url));
|
|
41
|
-
}
|
|
42
|
-
} else {
|
|
43
|
-
Linking.openURL(oAuthUrl);
|
|
44
|
-
}
|
|
45
|
-
} catch (error) {
|
|
46
|
-
console.log(error.message);
|
|
47
|
-
}
|
|
48
|
-
};
|
|
49
|
-
|
|
50
|
-
return <SelectOAuth onSelectOAuth={onSelectOAuthSystem} />;
|
|
51
|
-
};
|
|
52
|
-
|
|
53
|
-
export default Oauth;
|
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
/*
|
|
2
|
-
********************************************
|
|
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.
|
|
10
|
-
*********************************************
|
|
11
|
-
*/
|
|
12
|
-
import React from 'react';
|
|
13
|
-
import {Linking} from 'react-native';
|
|
14
|
-
import SelectOAuth from '../subComponents/SelectOAuth';
|
|
15
|
-
import {url, oAuthSystemType} from './OAuthConfig';
|
|
16
|
-
|
|
17
|
-
const Oauth = () => {
|
|
18
|
-
const onSelectOAuthSystem = ({
|
|
19
|
-
oAuthSystem,
|
|
20
|
-
}: {
|
|
21
|
-
oAuthSystem: oAuthSystemType;
|
|
22
|
-
}) => {
|
|
23
|
-
const oAuthUrl = url({platform: 'web'})[`${oAuthSystem}Url`];
|
|
24
|
-
Linking.openURL(oAuthUrl);
|
|
25
|
-
};
|
|
26
|
-
return <SelectOAuth onSelectOAuth={onSelectOAuthSystem} />;
|
|
27
|
-
};
|
|
28
|
-
|
|
29
|
-
export default Oauth;
|
|
@@ -1,77 +0,0 @@
|
|
|
1
|
-
/*
|
|
2
|
-
********************************************
|
|
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.
|
|
10
|
-
*********************************************
|
|
11
|
-
*/
|
|
12
|
-
export type oAuthSystemType = 'google' | 'microsoft' | 'slack' | 'apple';
|
|
13
|
-
type platformType = 'web' | 'mobile' | 'desktop';
|
|
14
|
-
type oAuthUrlType = {
|
|
15
|
-
googleUrl: string;
|
|
16
|
-
microsoftUrl: string;
|
|
17
|
-
slackUrl: string;
|
|
18
|
-
appleUrl: string;
|
|
19
|
-
};
|
|
20
|
-
|
|
21
|
-
const getRedirectFrontEndUrl = ({ platform}: {platform: platformType}) => platform === 'web' ? `${window.location.origin}`: `${$config.BACKEND_ENDPOINT}`
|
|
22
|
-
|
|
23
|
-
export const oAuthGoogle = ({platform}: {platform: platformType}) => ({
|
|
24
|
-
client_id: $config.GOOGLE_CLIENT_ID,
|
|
25
|
-
auth_uri: 'https://accounts.google.com/o/oauth2/auth',
|
|
26
|
-
redirect_uri: `${$config.BACKEND_ENDPOINT}/oauth`,
|
|
27
|
-
scope: encodeURIComponent(
|
|
28
|
-
'https://www.googleapis.com/auth/userinfo.profile https://www.googleapis.com/auth/userinfo.email',
|
|
29
|
-
),
|
|
30
|
-
state: encodeURIComponent(
|
|
31
|
-
`site=google&platform=${platform}&backend=${$config.BACKEND_ENDPOINT}&redirect=${getRedirectFrontEndUrl({platform})}/auth-token/`,
|
|
32
|
-
),
|
|
33
|
-
});
|
|
34
|
-
|
|
35
|
-
export const oAuthMicrosoft = ({platform}: {platform: platformType}) => ({
|
|
36
|
-
client_id: $config.MICROSOFT_CLIENT_ID,
|
|
37
|
-
auth_uri: 'https://login.microsoftonline.com/common/oauth2/v2.0/authorize',
|
|
38
|
-
redirect_uri: `${$config.BACKEND_ENDPOINT}/oauth`,
|
|
39
|
-
scope: 'openid',
|
|
40
|
-
state: encodeURIComponent(
|
|
41
|
-
`site=microsoft&platform=${platform}&redirect=${getRedirectFrontEndUrl({platform})}/auth-token/&backend=${$config.BACKEND_ENDPOINT}`,
|
|
42
|
-
),
|
|
43
|
-
});
|
|
44
|
-
|
|
45
|
-
export const oAuthSlack = ({platform}: {platform: platformType}) => ({
|
|
46
|
-
client_id: $config.SLACK_CLIENT_ID,
|
|
47
|
-
auth_uri: 'https://slack.com/oauth/authorize',
|
|
48
|
-
redirect_uri: `${$config.BACKEND_ENDPOINT}/oauth`,
|
|
49
|
-
scope: 'users.profile:read',
|
|
50
|
-
state: encodeURIComponent(
|
|
51
|
-
`site=slack&platform=${platform}&redirect=${getRedirectFrontEndUrl({platform})}/auth-token/&backend=${$config.BACKEND_ENDPOINT}`,
|
|
52
|
-
),
|
|
53
|
-
});
|
|
54
|
-
|
|
55
|
-
export const oAuthApple = ({platform}: {platform: platformType}) => ({
|
|
56
|
-
client_id: $config.APPLE_CLIENT_ID,
|
|
57
|
-
auth_uri: 'https://appleid.apple.com/auth/authorize',
|
|
58
|
-
redirect_uri: `${$config.BACKEND_ENDPOINT}/oauth`,
|
|
59
|
-
scope: 'name email',
|
|
60
|
-
state: encodeURIComponent(
|
|
61
|
-
`site=apple&platform=${platform}&redirect=${getRedirectFrontEndUrl({platform})}/auth-token/&backend=${$config.BACKEND_ENDPOINT}`,
|
|
62
|
-
),
|
|
63
|
-
});
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
export const url = ({platform}: {platform: platformType}): oAuthUrlType => {
|
|
67
|
-
const configGoogle = oAuthGoogle({platform});
|
|
68
|
-
const configMicrosoft = oAuthMicrosoft({platform});
|
|
69
|
-
const configSlack = oAuthSlack({platform});
|
|
70
|
-
const configApple = oAuthApple({platform});
|
|
71
|
-
return {
|
|
72
|
-
googleUrl: `${configGoogle.auth_uri}?response_type=code&scope=${configGoogle.scope}&include_granted_scopes=true&state=${configGoogle.state}&client_id=${configGoogle.client_id}&redirect_uri=${configGoogle.redirect_uri}`,
|
|
73
|
-
microsoftUrl: `${configMicrosoft.auth_uri}?response_type=code&scope=${configMicrosoft.scope}&include_granted_scopes=true&state=${configMicrosoft.state}&client_id=${configMicrosoft.client_id}&redirect_uri=${configMicrosoft.redirect_uri}`,
|
|
74
|
-
slackUrl: `${configSlack.auth_uri}?response_type=code&scope=${configSlack.scope}&include_granted_scopes=true&state=${configSlack.state}&client_id=${configSlack.client_id}&redirect_uri=${configSlack.redirect_uri}`,
|
|
75
|
-
appleUrl: `${configApple.auth_uri}?response_type=code&scope=${configApple.scope}&include_granted_scopes=true&state=${configApple.state}&response_mode=form_post&client_id=${configApple.client_id}&redirect_uri=${configApple.redirect_uri}`,
|
|
76
|
-
};
|
|
77
|
-
};
|
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
/*
|
|
2
|
-
********************************************
|
|
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.
|
|
10
|
-
*********************************************
|
|
11
|
-
*/
|
|
12
|
-
import React, {useContext, useState} from 'react';
|
|
13
|
-
import {Redirect, useParams} from './Router';
|
|
14
|
-
import StorageContext from './StorageContext';
|
|
15
|
-
import {Text} from 'react-native';
|
|
16
|
-
import useMount from './useMount';
|
|
17
|
-
import {useString} from '../utils/useString';
|
|
18
|
-
|
|
19
|
-
const Authenticated = () => {
|
|
20
|
-
//commented for v1 release
|
|
21
|
-
//const authenticationSuccessLabel = useString('authenticationSuccessLabel')();
|
|
22
|
-
const authenticationSuccessLabel = 'Authenticated Successfully!';
|
|
23
|
-
return <Text> {authenticationSuccessLabel} </Text>;
|
|
24
|
-
};
|
|
25
|
-
|
|
26
|
-
const StoreToken = () => {
|
|
27
|
-
const [ready, setReady] = useState(false);
|
|
28
|
-
const {token}: {token: string} = useParams();
|
|
29
|
-
const {setStore} = useContext(StorageContext);
|
|
30
|
-
|
|
31
|
-
useMount(() => {
|
|
32
|
-
setStore && setStore((store) => ({...store, token}));
|
|
33
|
-
setReady(true);
|
|
34
|
-
});
|
|
35
|
-
return ready ? <Redirect to={'/'} /> : <Authenticated />;
|
|
36
|
-
};
|
|
37
|
-
|
|
38
|
-
export default StoreToken;
|
|
@@ -1,69 +0,0 @@
|
|
|
1
|
-
/*
|
|
2
|
-
********************************************
|
|
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.
|
|
10
|
-
*********************************************
|
|
11
|
-
*/
|
|
12
|
-
import {createHook} from 'customization-implementation';
|
|
13
|
-
import React, {SetStateAction, useState} from 'react';
|
|
14
|
-
import {UidType} from '../../../agora-rn-uikit';
|
|
15
|
-
|
|
16
|
-
export interface ChatUIControlInterface {
|
|
17
|
-
groupActive: boolean;
|
|
18
|
-
privateActive: boolean;
|
|
19
|
-
selectedChatUserId: UidType;
|
|
20
|
-
setGroupActive: React.Dispatch<SetStateAction<boolean>>;
|
|
21
|
-
setPrivateActive: React.Dispatch<SetStateAction<boolean>>;
|
|
22
|
-
setSelectedChatUserId: React.Dispatch<SetStateAction<UidType>>;
|
|
23
|
-
message: string;
|
|
24
|
-
setMessage: React.Dispatch<SetStateAction<string>>;
|
|
25
|
-
}
|
|
26
|
-
|
|
27
|
-
const ChatUIControlContext = React.createContext<ChatUIControlInterface>({
|
|
28
|
-
groupActive: false,
|
|
29
|
-
privateActive: false,
|
|
30
|
-
selectedChatUserId: 0,
|
|
31
|
-
message: '',
|
|
32
|
-
setGroupActive: () => {},
|
|
33
|
-
setPrivateActive: () => {},
|
|
34
|
-
setSelectedChatUserId: () => {},
|
|
35
|
-
setMessage: () => {},
|
|
36
|
-
});
|
|
37
|
-
|
|
38
|
-
interface ChatUIControlProviderProps {
|
|
39
|
-
children: React.ReactNode;
|
|
40
|
-
}
|
|
41
|
-
|
|
42
|
-
const ChatUIControlProvider = (props: ChatUIControlProviderProps) => {
|
|
43
|
-
const [groupActive, setGroupActive] = useState(false);
|
|
44
|
-
const [privateActive, setPrivateActive] = useState(false);
|
|
45
|
-
const [selectedChatUserId, setSelectedChatUserId] = useState<UidType>(0);
|
|
46
|
-
const [message, setMessage] = useState('');
|
|
47
|
-
return (
|
|
48
|
-
<ChatUIControlContext.Provider
|
|
49
|
-
value={{
|
|
50
|
-
groupActive,
|
|
51
|
-
privateActive,
|
|
52
|
-
selectedChatUserId,
|
|
53
|
-
setGroupActive,
|
|
54
|
-
setPrivateActive,
|
|
55
|
-
setSelectedChatUserId,
|
|
56
|
-
message,
|
|
57
|
-
setMessage,
|
|
58
|
-
}}>
|
|
59
|
-
{props.children}
|
|
60
|
-
</ChatUIControlContext.Provider>
|
|
61
|
-
);
|
|
62
|
-
};
|
|
63
|
-
|
|
64
|
-
/**
|
|
65
|
-
* The ChatUIControl app state governs the chat ui.
|
|
66
|
-
*/
|
|
67
|
-
const useChatUIControl = createHook(ChatUIControlContext);
|
|
68
|
-
|
|
69
|
-
export {ChatUIControlProvider, useChatUIControl};
|
|
@@ -1,70 +0,0 @@
|
|
|
1
|
-
/*
|
|
2
|
-
********************************************
|
|
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.
|
|
10
|
-
*********************************************
|
|
11
|
-
*/
|
|
12
|
-
import React, {createContext} from 'react';
|
|
13
|
-
import {createHook} from 'customization-implementation';
|
|
14
|
-
import {UidType} from '../../../agora-rn-uikit';
|
|
15
|
-
export interface MeetingInfoContextInterface {
|
|
16
|
-
isJoinDataFetched?: boolean;
|
|
17
|
-
data?: {
|
|
18
|
-
isHost: boolean;
|
|
19
|
-
meetingTitle: string;
|
|
20
|
-
roomId: {
|
|
21
|
-
attendee: string;
|
|
22
|
-
host?: string;
|
|
23
|
-
};
|
|
24
|
-
pstn?: {
|
|
25
|
-
number: string;
|
|
26
|
-
pin: string;
|
|
27
|
-
};
|
|
28
|
-
isSeparateHostLink: boolean;
|
|
29
|
-
channel?: string;
|
|
30
|
-
uid?: UidType;
|
|
31
|
-
token?: string;
|
|
32
|
-
rtmToken?: string;
|
|
33
|
-
encryptionSecret?: string;
|
|
34
|
-
screenShareUid?: string;
|
|
35
|
-
screenShareToken?: string;
|
|
36
|
-
};
|
|
37
|
-
}
|
|
38
|
-
|
|
39
|
-
export const MeetingInfoDefaultValue: MeetingInfoContextInterface = {
|
|
40
|
-
isJoinDataFetched: false,
|
|
41
|
-
data: {
|
|
42
|
-
isHost: false,
|
|
43
|
-
meetingTitle: '',
|
|
44
|
-
roomId: {
|
|
45
|
-
attendee: '',
|
|
46
|
-
},
|
|
47
|
-
isSeparateHostLink: true,
|
|
48
|
-
},
|
|
49
|
-
};
|
|
50
|
-
|
|
51
|
-
const MeetingInfoContext = createContext(MeetingInfoDefaultValue);
|
|
52
|
-
|
|
53
|
-
interface MeetingInfoProviderProps {
|
|
54
|
-
children: React.ReactNode;
|
|
55
|
-
value: MeetingInfoContextInterface;
|
|
56
|
-
}
|
|
57
|
-
|
|
58
|
-
const MeetingInfoProvider = (props: MeetingInfoProviderProps) => {
|
|
59
|
-
return (
|
|
60
|
-
<MeetingInfoContext.Provider value={{...props.value}}>
|
|
61
|
-
{props.children}
|
|
62
|
-
</MeetingInfoContext.Provider>
|
|
63
|
-
);
|
|
64
|
-
};
|
|
65
|
-
/**
|
|
66
|
-
* The MeetingInfo app state contains information about the active meeting.
|
|
67
|
-
*/
|
|
68
|
-
const useMeetingInfo = createHook(MeetingInfoContext);
|
|
69
|
-
|
|
70
|
-
export {MeetingInfoProvider, useMeetingInfo};
|
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
/*
|
|
2
|
-
********************************************
|
|
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.
|
|
10
|
-
*********************************************
|
|
11
|
-
*/
|
|
12
|
-
import React from 'react';
|
|
13
|
-
import {View} from 'react-native';
|
|
14
|
-
import {ButtonTemplateName} from '../../utils/useButtonTemplate';
|
|
15
|
-
import LocalAudioMute from '../../subComponents/LocalAudioMute';
|
|
16
|
-
import LocalVideoMute from '../../subComponents/LocalVideoMute';
|
|
17
|
-
import ParticipantName from './ParticipantName';
|
|
18
|
-
|
|
19
|
-
const MeParticipant = (props: any) => {
|
|
20
|
-
const {p_style, name} = props;
|
|
21
|
-
|
|
22
|
-
return (
|
|
23
|
-
<View style={p_style.participantRow}>
|
|
24
|
-
<ParticipantName value={name} />
|
|
25
|
-
<View style={p_style.participantActionContainer}>
|
|
26
|
-
<View style={[p_style.actionBtnIcon, {marginRight: 10}]}>
|
|
27
|
-
<LocalAudioMute buttonTemplateName={ButtonTemplateName.topBar} />
|
|
28
|
-
</View>
|
|
29
|
-
{!$config.AUDIO_ROOM && (
|
|
30
|
-
<View style={p_style.actionBtnIcon}>
|
|
31
|
-
<LocalVideoMute buttonTemplateName={ButtonTemplateName.topBar} />
|
|
32
|
-
</View>
|
|
33
|
-
)}
|
|
34
|
-
</View>
|
|
35
|
-
</View>
|
|
36
|
-
);
|
|
37
|
-
};
|
|
38
|
-
export default MeParticipant;
|
|
@@ -1,71 +0,0 @@
|
|
|
1
|
-
/*
|
|
2
|
-
********************************************
|
|
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.
|
|
10
|
-
*********************************************
|
|
11
|
-
*/
|
|
12
|
-
import React from 'react';
|
|
13
|
-
import {View} from 'react-native';
|
|
14
|
-
import RemoteAudioMute from '../../subComponents/RemoteAudioMute';
|
|
15
|
-
import RemoteVideoMute from '../../subComponents/RemoteVideoMute';
|
|
16
|
-
import {ApprovedLiveStreamControlsView} from '../../subComponents/livestream';
|
|
17
|
-
import RemoteEndCall from '../../subComponents/RemoteEndCall';
|
|
18
|
-
import ParticipantName from './ParticipantName';
|
|
19
|
-
import {RenderInterface} from '../../../agora-rn-uikit';
|
|
20
|
-
|
|
21
|
-
interface remoteParticipantsInterface {
|
|
22
|
-
p_styles: any;
|
|
23
|
-
name: string;
|
|
24
|
-
user: RenderInterface;
|
|
25
|
-
showControls: boolean;
|
|
26
|
-
isHost: boolean;
|
|
27
|
-
}
|
|
28
|
-
|
|
29
|
-
const RemoteParticipants = (props: remoteParticipantsInterface) => {
|
|
30
|
-
const {p_styles, user, name, showControls, isHost} = props;
|
|
31
|
-
return (
|
|
32
|
-
<View style={p_styles.participantRow}>
|
|
33
|
-
<ParticipantName value={name} />
|
|
34
|
-
{showControls ? (
|
|
35
|
-
<View style={p_styles.participantActionContainer}>
|
|
36
|
-
{$config.EVENT_MODE && (
|
|
37
|
-
<ApprovedLiveStreamControlsView
|
|
38
|
-
p_styles={p_styles}
|
|
39
|
-
uid={user.uid}
|
|
40
|
-
/>
|
|
41
|
-
)}
|
|
42
|
-
<View style={[p_styles.actionBtnIcon, {marginRight: 10}]}>
|
|
43
|
-
<RemoteEndCall uid={user.uid} isHost={isHost} />
|
|
44
|
-
</View>
|
|
45
|
-
<View style={[p_styles.actionBtnIcon, {marginRight: 10}]}>
|
|
46
|
-
<RemoteAudioMute
|
|
47
|
-
uid={user.uid}
|
|
48
|
-
audio={user.audio}
|
|
49
|
-
isHost={isHost}
|
|
50
|
-
/>
|
|
51
|
-
</View>
|
|
52
|
-
{!$config.AUDIO_ROOM && (
|
|
53
|
-
<View style={[p_styles.actionBtnIcon]}>
|
|
54
|
-
<RemoteVideoMute
|
|
55
|
-
uid={user.uid}
|
|
56
|
-
video={user.video}
|
|
57
|
-
isHost={isHost}
|
|
58
|
-
/>
|
|
59
|
-
</View>
|
|
60
|
-
)}
|
|
61
|
-
</View>
|
|
62
|
-
) : (
|
|
63
|
-
<></>
|
|
64
|
-
// <View style={p_styles.dummyView}>
|
|
65
|
-
// <Text>Remote screen sharing</Text>
|
|
66
|
-
// </View>
|
|
67
|
-
)}
|
|
68
|
-
</View>
|
|
69
|
-
);
|
|
70
|
-
};
|
|
71
|
-
export default RemoteParticipants;
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
|
-
import {useCustomization} from 'customization-implementation';
|
|
3
|
-
|
|
4
|
-
const CustomUserContextHolder: React.FC<{children: any}> = (props) => {
|
|
5
|
-
const useUserContext = useCustomization((config) => {
|
|
6
|
-
if (
|
|
7
|
-
config?.components?.videoCall &&
|
|
8
|
-
typeof config?.components?.videoCall === 'object' &&
|
|
9
|
-
config?.components?.videoCall?.useUserContext &&
|
|
10
|
-
typeof config?.components?.videoCall?.useUserContext === 'function'
|
|
11
|
-
) {
|
|
12
|
-
return config?.components?.videoCall?.useUserContext;
|
|
13
|
-
} else {
|
|
14
|
-
return () => {};
|
|
15
|
-
}
|
|
16
|
-
});
|
|
17
|
-
useUserContext();
|
|
18
|
-
return props.children;
|
|
19
|
-
};
|
|
20
|
-
export default CustomUserContextHolder;
|
|
@@ -1,88 +0,0 @@
|
|
|
1
|
-
import {gql, useMutation} from '@apollo/client';
|
|
2
|
-
import {MeetingInfoContextInterface} from '../components/meeting-info/useMeetingInfo';
|
|
3
|
-
import {useSetMeetingInfo} from '../components/meeting-info/useSetMeetingInfo';
|
|
4
|
-
import SDKEvents from '../utils/SdkEvents';
|
|
5
|
-
|
|
6
|
-
const CREATE_CHANNEL = gql`
|
|
7
|
-
mutation CreateChannel(
|
|
8
|
-
$title: String!
|
|
9
|
-
$backendURL: String!
|
|
10
|
-
$enablePSTN: Boolean
|
|
11
|
-
) {
|
|
12
|
-
createChannel(
|
|
13
|
-
title: $title
|
|
14
|
-
backendURL: $backendURL
|
|
15
|
-
enablePSTN: $enablePSTN
|
|
16
|
-
) {
|
|
17
|
-
passphrase {
|
|
18
|
-
host
|
|
19
|
-
view
|
|
20
|
-
}
|
|
21
|
-
channel
|
|
22
|
-
title
|
|
23
|
-
pstn {
|
|
24
|
-
number
|
|
25
|
-
dtmf
|
|
26
|
-
}
|
|
27
|
-
}
|
|
28
|
-
}
|
|
29
|
-
`;
|
|
30
|
-
/**
|
|
31
|
-
* Returns an asynchronous function to create a meeting with the given options.
|
|
32
|
-
*/
|
|
33
|
-
export default function useCreateMeeting() {
|
|
34
|
-
const [createChannel, {error}] = useMutation(CREATE_CHANNEL);
|
|
35
|
-
const {setMeetingInfo} = useSetMeetingInfo();
|
|
36
|
-
return async (
|
|
37
|
-
roomTitle: string,
|
|
38
|
-
enablePSTN?: boolean,
|
|
39
|
-
isSeparateHostLink?: boolean,
|
|
40
|
-
) => {
|
|
41
|
-
const res = await createChannel({
|
|
42
|
-
variables: {
|
|
43
|
-
title: roomTitle,
|
|
44
|
-
backendURL: $config.BACKEND_ENDPOINT,
|
|
45
|
-
enablePSTN: enablePSTN,
|
|
46
|
-
},
|
|
47
|
-
});
|
|
48
|
-
if (error) {
|
|
49
|
-
throw error;
|
|
50
|
-
}
|
|
51
|
-
if (res && res?.data && res?.data?.createChannel) {
|
|
52
|
-
let meetingInfo: Partial<MeetingInfoContextInterface['data']> = {
|
|
53
|
-
roomId: {
|
|
54
|
-
attendee: '',
|
|
55
|
-
},
|
|
56
|
-
};
|
|
57
|
-
if (res?.data?.createChannel?.passphrase?.view) {
|
|
58
|
-
meetingInfo.roomId.attendee = res.data.createChannel.passphrase.view;
|
|
59
|
-
}
|
|
60
|
-
if (res?.data?.createChannel?.passphrase?.host) {
|
|
61
|
-
meetingInfo.roomId.host = res.data.createChannel.passphrase.host;
|
|
62
|
-
}
|
|
63
|
-
if (enablePSTN === true && res?.data?.createChannel?.pstn) {
|
|
64
|
-
meetingInfo.pstn = {
|
|
65
|
-
number: res.data.createChannel.pstn.number,
|
|
66
|
-
pin: res.data.createChannel.pstn.dtmf,
|
|
67
|
-
};
|
|
68
|
-
}
|
|
69
|
-
setMeetingInfo({
|
|
70
|
-
data: {
|
|
71
|
-
isHost: true,
|
|
72
|
-
isSeparateHostLink: isSeparateHostLink ? true : false,
|
|
73
|
-
meetingTitle: roomTitle,
|
|
74
|
-
roomId: meetingInfo?.roomId,
|
|
75
|
-
pstn: meetingInfo?.pstn,
|
|
76
|
-
},
|
|
77
|
-
});
|
|
78
|
-
SDKEvents.emit(
|
|
79
|
-
'create',
|
|
80
|
-
meetingInfo.roomId.host,
|
|
81
|
-
meetingInfo.roomId.attendee,
|
|
82
|
-
meetingInfo?.pstn,
|
|
83
|
-
);
|
|
84
|
-
} else {
|
|
85
|
-
throw new Error(`An error occurred in parsing the channel data.`);
|
|
86
|
-
}
|
|
87
|
-
};
|
|
88
|
-
}
|