agora-appbuilder-core 3.0.10 → 3.0.11

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (248) hide show
  1. package/Readme.md +0 -6
  2. package/package.json +2 -2
  3. package/template/_package-lock.json +4719 -5862
  4. package/template/agora-rn-uikit/src/Contexts/LocalUserContext.tsx +0 -4
  5. package/template/agora-rn-uikit/src/Contexts/PropsContext.tsx +0 -18
  6. package/template/agora-rn-uikit/src/Contexts/RtcContext.tsx +0 -2
  7. package/template/agora-rn-uikit/src/Controls/BtnTemplate.tsx +26 -30
  8. package/template/agora-rn-uikit/src/Controls/Icons.ts +83 -30
  9. package/template/agora-rn-uikit/src/Controls/ImageIcon.tsx +6 -6
  10. package/template/agora-rn-uikit/src/Reducer/LocalMuteAudio.ts +0 -1
  11. package/template/agora-rn-uikit/src/Reducer/LocalMuteVideo.ts +0 -1
  12. package/template/agora-rn-uikit/src/Reducer/RemoteAudioStateChanged.ts +0 -1
  13. package/template/agora-rn-uikit/src/Reducer/RemoteVideoStateChanged.ts +0 -1
  14. package/template/agora-rn-uikit/src/Reducer/UpdateDualStreamMode.ts +0 -1
  15. package/template/agora-rn-uikit/src/Reducer/UserJoined.ts +0 -2
  16. package/template/agora-rn-uikit/src/Reducer/UserMuteRemoteAudio.ts +0 -1
  17. package/template/agora-rn-uikit/src/Reducer/UserMuteRemoteVideo.ts +0 -1
  18. package/template/agora-rn-uikit/src/Reducer/UserOffline.ts +0 -1
  19. package/template/agora-rn-uikit/src/Reducer/index.ts +0 -3
  20. package/template/agora-rn-uikit/src/Rtc/Create.tsx +1 -89
  21. package/template/agora-rn-uikit/src/RtcConfigure.tsx +2 -39
  22. package/template/agora-rn-uikit/src/Views/MaxVideoView.native.tsx +5 -15
  23. package/template/agora-rn-uikit/src/Views/MaxVideoView.tsx +9 -15
  24. package/template/agora-rn-uikit/src/index.ts +1 -3
  25. package/template/android/app/build.gradle +0 -1
  26. package/template/android/app/src/main/AndroidManifest.xml +15 -22
  27. package/template/android/app/src/main/java/com/helloworld/MainActivity.java +0 -50
  28. package/template/android/build.gradle +3 -3
  29. package/template/babel.config.js +0 -1
  30. package/template/bridge/rtc/webNg/RtcEngine.ts +17 -110
  31. package/template/customization-api/sub-components.ts +1 -1
  32. package/template/customization-api/typeDefinition.ts +1 -2
  33. package/template/electron/index.html +27 -27
  34. package/template/electron/renderer/index.js +0 -1
  35. package/template/global.d.ts +4 -25
  36. package/template/index.rsdk.tsx +0 -1
  37. package/template/index.web.js +1 -2
  38. package/template/index.wsdk.tsx +1 -1
  39. package/template/ios/HelloWorld/Info.plist +1 -14
  40. package/template/ios/HelloWorld.xcodeproj/project.pbxproj +0 -17
  41. package/template/metro.config.js +1 -1
  42. package/template/package.json +7 -18
  43. package/template/react-native-toast-message/index.d.ts +43 -43
  44. package/template/react-native-toast-message/src/colors/index.js +2 -3
  45. package/template/react-native-toast-message/src/components/base/index.js +59 -46
  46. package/template/react-native-toast-message/src/components/base/styles.js +32 -16
  47. package/template/react-native-toast-message/src/components/error.js +2 -3
  48. package/template/react-native-toast-message/src/components/info.js +2 -3
  49. package/template/react-native-toast-message/src/components/success.js +2 -3
  50. package/template/react-native-toast-message/src/index.js +31 -122
  51. package/template/react-native-toast-message/src/index.sdk.tsx +35 -125
  52. package/template/react-native-toast-message/src/styles.js +4 -3
  53. package/template/react-native-toast-message/src/styles.sdk.ts +4 -3
  54. package/template/src/App.tsx +0 -6
  55. package/template/src/AppWrapper.tsx +28 -63
  56. package/template/src/assets/icons.ts +102 -0
  57. package/template/src/atoms/HorizontalRule.tsx +1 -3
  58. package/template/src/atoms/PrimaryButton.tsx +26 -51
  59. package/template/src/atoms/SecondaryButton.tsx +5 -8
  60. package/template/src/atoms/TextInput.tsx +14 -12
  61. package/template/src/components/Chat.tsx +214 -86
  62. package/template/src/components/ChatContext.ts +1 -8
  63. package/template/src/components/ColorConfigure.tsx +1 -1
  64. package/template/src/components/ColorContext.ts +1 -1
  65. package/template/src/components/{Controls1.native.tsx → Controls.native.tsx} +4 -6
  66. package/template/src/components/Controls.tsx +42 -342
  67. package/template/src/components/DeviceConfigure.tsx +101 -461
  68. package/template/src/components/DeviceContext.tsx +4 -8
  69. package/template/src/components/EventsConfigure.tsx +7 -144
  70. package/template/src/components/GraphQLProvider.tsx +1 -1
  71. package/template/src/components/GridVideo.tsx +44 -59
  72. package/template/src/components/HostControlView.tsx +35 -114
  73. package/template/src/components/Navbar.tsx +398 -216
  74. package/template/src/components/NetworkQualityContext.tsx +20 -20
  75. package/template/src/components/ParticipantsView.tsx +154 -177
  76. package/template/src/components/PinnedVideo.tsx +120 -207
  77. package/template/src/components/Precall.native.tsx +119 -358
  78. package/template/src/components/Precall.tsx +135 -269
  79. package/template/src/components/RTMConfigure.tsx +4 -27
  80. package/template/src/components/Router.electron.ts +0 -1
  81. package/template/src/components/Router.native.ts +0 -1
  82. package/template/src/components/Router.sdk.ts +0 -1
  83. package/template/src/components/Router.ts +0 -1
  84. package/template/src/components/Settings.tsx +95 -26
  85. package/template/src/components/SettingsView.tsx +56 -251
  86. package/template/src/components/Share.tsx +273 -302
  87. package/template/src/components/StorageContext.tsx +3 -30
  88. package/template/src/components/chat-messages/useChatMessages.tsx +23 -69
  89. package/template/src/components/chat-ui/useChatUIControl.tsx +0 -7
  90. package/template/src/components/common/Error.tsx +6 -20
  91. package/template/src/components/common/Logo.tsx +15 -16
  92. package/template/src/components/contexts/LiveStreamDataContext.tsx +5 -10
  93. package/template/src/components/contexts/VideoMeetingDataContext.tsx +7 -37
  94. package/template/src/components/livestream/LiveStreamContext.tsx +36 -270
  95. package/template/src/components/livestream/Types.ts +14 -39
  96. package/template/src/components/livestream/index.ts +0 -1
  97. package/template/src/components/livestream/views/LiveStreamControls.tsx +4 -12
  98. package/template/src/components/participants/AllAudienceParticipants.tsx +30 -101
  99. package/template/src/components/participants/AllHostParticipants.tsx +34 -103
  100. package/template/src/components/participants/MeParticipant.tsx +38 -0
  101. package/template/src/components/participants/ParticipantName.tsx +7 -13
  102. package/template/src/components/participants/ParticipantSectionTitle.tsx +10 -35
  103. package/template/src/components/participants/RemoteParticipants.tsx +71 -0
  104. package/template/src/components/participants/ScreenshareParticipants.tsx +12 -144
  105. package/template/src/components/precall/{LocalMute1.native.tsx → LocalMute.native.tsx} +5 -21
  106. package/template/src/components/precall/LocalMute.tsx +14 -84
  107. package/template/src/components/precall/VideoPreview.native.tsx +3 -48
  108. package/template/src/components/precall/VideoPreview.tsx +7 -163
  109. package/template/src/components/precall/joinCallBtn.tsx +2 -15
  110. package/template/src/components/precall/meetingTitle.tsx +12 -15
  111. package/template/src/components/precall/selectDevice.tsx +21 -1
  112. package/template/src/components/precall/textInput.tsx +4 -32
  113. package/template/src/components/precall/usePreCall.tsx +0 -16
  114. package/template/src/components/styles.ts +21 -42
  115. package/template/src/components/useShareLink.tsx +14 -12
  116. package/template/src/language/default-labels/precallScreenLabels.ts +3 -3
  117. package/template/src/pages/Authenticate.tsx +15 -5
  118. package/template/src/pages/Create.tsx +165 -293
  119. package/template/src/pages/Join.tsx +67 -93
  120. package/template/src/pages/VideoCall.tsx +64 -89
  121. package/template/src/pages/video-call/DefaultLayouts.ts +4 -4
  122. package/template/src/pages/video-call/NameWithMicIcon.tsx +44 -120
  123. package/template/src/pages/video-call/RenderComponent.tsx +2 -3
  124. package/template/src/pages/video-call/VideoCallScreen.tsx +9 -45
  125. package/template/src/pages/video-call/VideoComponent.tsx +3 -18
  126. package/template/src/pages/video-call/VideoRenderer.tsx +60 -218
  127. package/template/src/rtm-events/constants.ts +0 -2
  128. package/template/src/subComponents/ChatBubble.tsx +83 -123
  129. package/template/src/subComponents/ChatContainer.tsx +84 -257
  130. package/template/src/subComponents/ChatInput.tsx +46 -61
  131. package/template/src/subComponents/Checkbox.native.tsx +5 -16
  132. package/template/src/subComponents/Checkbox.tsx +2 -2
  133. package/template/src/subComponents/CopyJoinInfo.tsx +58 -36
  134. package/template/src/subComponents/FallbackLogo.tsx +40 -122
  135. package/template/src/subComponents/LanguageSelector.tsx +1 -1
  136. package/template/src/subComponents/{LayoutIconDropdown1.native.tsx → LayoutIconDropdown.native.tsx} +18 -4
  137. package/template/src/subComponents/LayoutIconDropdown.tsx +134 -131
  138. package/template/src/subComponents/LocalAudioMute.tsx +27 -119
  139. package/template/src/subComponents/LocalEndCall.tsx +33 -71
  140. package/template/src/subComponents/LocalSwitchCamera.tsx +30 -17
  141. package/template/src/subComponents/LocalVideoMute.tsx +27 -117
  142. package/template/src/subComponents/Logo.tsx +4 -3
  143. package/template/src/subComponents/LogoutButton.tsx +1 -1
  144. package/template/src/subComponents/NetworkQualityPill.tsx +63 -60
  145. package/template/src/subComponents/OpenInNativeButton.tsx +3 -3
  146. package/template/src/subComponents/Recording.tsx +29 -28
  147. package/template/src/subComponents/RemoteAudioMute.tsx +29 -83
  148. package/template/src/subComponents/RemoteEndCall.tsx +5 -8
  149. package/template/src/subComponents/RemoteVideoMute.tsx +21 -74
  150. package/template/src/subComponents/ScreenShareNotice.tsx +8 -83
  151. package/template/src/subComponents/SelectDevice.tsx +61 -404
  152. package/template/src/subComponents/SelectOAuth.tsx +8 -9
  153. package/template/src/subComponents/ToastConfig.tsx +10 -150
  154. package/template/src/subComponents/chat/ChatParticipants.tsx +78 -187
  155. package/template/src/subComponents/livestream/CurrentLiveStreamRequestsView.tsx +32 -95
  156. package/template/src/subComponents/livestream/controls/LocalRaiseHand.tsx +33 -29
  157. package/template/src/subComponents/livestream/controls/RemoteLiveStreamApprovedRequestRecall.tsx +6 -6
  158. package/template/src/subComponents/livestream/controls/RemoteLiveStreamRequestApprove.tsx +11 -24
  159. package/template/src/subComponents/livestream/controls/RemoteLiveStreamRequestReject.tsx +10 -17
  160. package/template/src/subComponents/recording/useRecording.tsx +27 -79
  161. package/template/src/subComponents/screenshare/ScreenshareButton.tsx +70 -52
  162. package/template/src/subComponents/screenshare/ScreenshareConfigure.native.tsx +2 -11
  163. package/template/src/subComponents/screenshare/ScreenshareConfigure.tsx +4 -26
  164. package/template/src/utils/common.tsx +1 -155
  165. package/template/src/utils/index.tsx +0 -19
  166. package/template/src/utils/isMobileOrTablet.ts +2 -7
  167. package/template/src/utils/useButtonTemplate.tsx +0 -1
  168. package/template/src/utils/useMuteToggleLocal.ts +3 -54
  169. package/template/web/index.html +0 -5
  170. package/template/webpack.commons.js +8 -13
  171. package/template/webpack.web.config.js +0 -1
  172. package/template/agora-rn-uikit/src/Reducer/ActiveSpeakerDetected.ts +0 -11
  173. package/template/agora-rn-uikit/src/Reducer/LocalPermissionState.ts +0 -24
  174. package/template/agora-rn-uikit/src/Reducer/UserPin.ts +0 -11
  175. package/template/android/app/src/main/assets/fonts/SourceSansPro-Regular.ttf +0 -0
  176. package/template/android/app/src/main/assets/fonts/icomoon.ttf +0 -0
  177. package/template/android/app/src/main/res/values/colors.xml +0 -7
  178. package/template/react-native-toast-message/src/components/checkbox.js +0 -178
  179. package/template/react-native.config.js +0 -7
  180. package/template/src/assets/font-styles.css +0 -329
  181. package/template/src/assets/fonts/SourceSansPro-Regular.ttf +0 -0
  182. package/template/src/assets/fonts/icomoon.ttf +0 -0
  183. package/template/src/assets/permission.png +0 -0
  184. package/template/src/assets/selection.json +0 -1
  185. package/template/src/atoms/ActionMenu.tsx +0 -236
  186. package/template/src/atoms/AnimatedActiveSpeaker.native.tsx +0 -71
  187. package/template/src/atoms/AnimatedActiveSpeaker.tsx +0 -84
  188. package/template/src/atoms/AnimatedRings.native.tsx +0 -68
  189. package/template/src/atoms/AnimatedRings.tsx +0 -70
  190. package/template/src/atoms/Card.tsx +0 -61
  191. package/template/src/atoms/CircularProgress.native.tsx +0 -121
  192. package/template/src/atoms/CircularProgress.tsx +0 -102
  193. package/template/src/atoms/CustomIcon.tsx +0 -88
  194. package/template/src/atoms/CustomSwitch.tsx +0 -287
  195. package/template/src/atoms/Dropdown.tsx +0 -306
  196. package/template/src/atoms/IconButton.tsx +0 -162
  197. package/template/src/atoms/ImageIcon.tsx +0 -98
  198. package/template/src/atoms/InfoBubble.tsx +0 -291
  199. package/template/src/atoms/Input.tsx +0 -87
  200. package/template/src/atoms/InviteInfo.tsx +0 -166
  201. package/template/src/atoms/LinkButton.tsx +0 -28
  202. package/template/src/atoms/OutlineButton.tsx +0 -61
  203. package/template/src/atoms/ParticipantsCount.tsx +0 -73
  204. package/template/src/atoms/Popup.tsx +0 -147
  205. package/template/src/atoms/RecordingInfo.tsx +0 -49
  206. package/template/src/atoms/Spacer.tsx +0 -22
  207. package/template/src/atoms/TertiaryButton.tsx +0 -78
  208. package/template/src/atoms/Toggle.tsx +0 -47
  209. package/template/src/atoms/Tooltip.native.tsx +0 -65
  210. package/template/src/atoms/Tooltip.tsx +0 -94
  211. package/template/src/atoms/UserAvatar.tsx +0 -60
  212. package/template/src/components/CommonStyles.ts +0 -44
  213. package/template/src/components/ToastComponent.tsx +0 -8
  214. package/template/src/components/participants/Participant.tsx +0 -302
  215. package/template/src/components/participants/UserActionMenuOptions.tsx +0 -398
  216. package/template/src/components/popups/InvitePopup.tsx +0 -115
  217. package/template/src/components/popups/StopRecordingPopup.tsx +0 -114
  218. package/template/src/components/precall/PermissionHelper.native.tsx +0 -5
  219. package/template/src/components/precall/PermissionHelper.tsx +0 -126
  220. package/template/src/components/precall/PreCallSettings.tsx +0 -52
  221. package/template/src/components/useToast.tsx +0 -41
  222. package/template/src/components/useVideoCall.tsx +0 -65
  223. package/template/src/pages/Endcall.tsx +0 -148
  224. package/template/src/pages/video-call/ActionSheet.native.tsx +0 -215
  225. package/template/src/pages/video-call/ActionSheet.tsx +0 -226
  226. package/template/src/pages/video-call/ActionSheetContent.tsx +0 -479
  227. package/template/src/pages/video-call/ActionSheetHandle.tsx +0 -38
  228. package/template/src/pages/video-call/ActionSheetStyles.css +0 -138
  229. package/template/src/pages/video-call/SidePanelHeader.tsx +0 -190
  230. package/template/src/pages/video-call/VideoCallMobileView.tsx +0 -139
  231. package/template/src/pages/video-call/VideoCallScreen.native.tsx +0 -37
  232. package/template/src/subComponents/ChatInput.ios.tsx +0 -237
  233. package/template/src/subComponents/EndcallPopup.tsx +0 -107
  234. package/template/src/subComponents/LayoutIconButton.tsx +0 -201
  235. package/template/src/subComponents/RemoteMutePopup.tsx +0 -193
  236. package/template/src/subComponents/RemoveMeetingPopup.tsx +0 -109
  237. package/template/src/subComponents/RemoveScreensharePopup.tsx +0 -109
  238. package/template/src/subComponents/SelectDeviceSettings.backup.tsx +0 -207
  239. package/template/src/subComponents/SidePanelHeader.tsx +0 -112
  240. package/template/src/theme/index.ts +0 -46
  241. package/template/src/utils/PlatformWrapper.tsx +0 -21
  242. package/template/src/utils/hexadecimalTransparency.ts +0 -108
  243. package/template/src/utils/pendingStateUpdateHelper.ts +0 -19
  244. package/template/src/utils/useFocus.tsx +0 -46
  245. package/template/src/utils/useIsActiveSpeaker.ts +0 -27
  246. package/template/src/utils/useIsHandRaised.ts +0 -13
  247. package/template/src/utils/useRemoteEndScreenshare.ts +0 -26
  248. package/template/src/utils/useRemoteRequest.ts +0 -84
@@ -1,147 +0,0 @@
1
- import {
2
- StyleSheet,
3
- Text,
4
- View,
5
- Modal,
6
- TouchableWithoutFeedback,
7
- ModalProps,
8
- ViewStyle,
9
- } from 'react-native';
10
- import React, {SetStateAction} from 'react';
11
- import IconButton from './IconButton';
12
- import ThemeConfig from '../theme';
13
- import hexadecimalTransparency from '../utils/hexadecimalTransparency';
14
- import {isMobileUA, useIsDesktop} from '../../src/utils/common';
15
-
16
- interface PopupProps extends ModalProps {
17
- title?: string;
18
- modalVisible: boolean;
19
- setModalVisible: React.Dispatch<SetStateAction<boolean>>;
20
- showCloseIcon?: boolean;
21
- children: React.ReactNode;
22
- contentContainerStyle?: ViewStyle;
23
- containerStyle?: ViewStyle;
24
- }
25
- const Popup = (props: PopupProps) => {
26
- const {
27
- title,
28
- modalVisible,
29
- setModalVisible,
30
- children,
31
- showCloseIcon,
32
- ...otherProps
33
- } = props;
34
-
35
- const isDesktop = useIsDesktop()('popup');
36
-
37
- return (
38
- <Modal
39
- animationType="none"
40
- transparent={true}
41
- visible={modalVisible}
42
- onRequestClose={() => {
43
- setModalVisible(false);
44
- }}
45
- {...otherProps}>
46
- <View
47
- style={[
48
- styles.centeredView,
49
- isDesktop && {alignItems: 'center'},
50
- props?.containerStyle,
51
- ]}>
52
- <TouchableWithoutFeedback
53
- onPress={() => {
54
- setModalVisible(false);
55
- }}>
56
- <View style={styles.backDrop} />
57
- </TouchableWithoutFeedback>
58
-
59
- <View style={[styles.modalView, props?.contentContainerStyle]}>
60
- {title || showCloseIcon ? (
61
- <View style={styles.header}>
62
- <Text style={styles.title}>{title}</Text>
63
- {showCloseIcon ? (
64
- <View>
65
- <IconButton
66
- hoverEffect={true}
67
- hoverEffectStyle={{
68
- backgroundColor: $config.ICON_BG_COLOR,
69
- borderRadius: 20,
70
- }}
71
- iconProps={{
72
- iconType: 'plain',
73
- iconContainerStyle: {
74
- padding: isMobileUA() ? 0 : 5,
75
- },
76
- name: 'close',
77
- tintColor: $config.SECONDARY_ACTION_COLOR,
78
- }}
79
- onPress={() => {
80
- setModalVisible(false);
81
- }}
82
- />
83
- </View>
84
- ) : (
85
- <></>
86
- )}
87
- </View>
88
- ) : (
89
- <></>
90
- )}
91
- {children}
92
- </View>
93
- </View>
94
- </Modal>
95
- );
96
- };
97
-
98
- export default Popup;
99
-
100
- const styles = StyleSheet.create({
101
- centeredView: {
102
- flex: 1,
103
- position: 'relative',
104
- justifyContent: 'center',
105
- alignItems: 'center',
106
- paddingHorizontal: 20,
107
- },
108
- modalView: {
109
- backgroundColor: $config.CARD_LAYER_1_COLOR,
110
- borderWidth: 1,
111
- borderColor: $config.CARD_LAYER_3_COLOR,
112
- borderRadius: ThemeConfig.BorderRadius.large,
113
- padding: 32,
114
- shadowColor: $config.HARD_CODED_BLACK_COLOR,
115
- shadowOffset: {
116
- width: 0,
117
- height: 2,
118
- },
119
- shadowOpacity: 0.1,
120
- shadowRadius: 4,
121
- elevation: 5,
122
- maxWidth: 650,
123
- },
124
- backDrop: {
125
- position: 'absolute',
126
- top: 0,
127
- bottom: 0,
128
- left: 0,
129
- right: 0,
130
- backgroundColor:
131
- $config.HARD_CODED_BLACK_COLOR + hexadecimalTransparency['60%'],
132
- },
133
- header: {
134
- flexDirection: 'row',
135
- justifyContent: 'space-between',
136
- alignItems: 'flex-start',
137
- marginBottom: 32,
138
- },
139
- title: {
140
- color: $config.FONT_COLOR,
141
- fontFamily: ThemeConfig.FontFamily.sansPro,
142
- fontSize: 24,
143
- lineHeight: 24,
144
- fontWeight: '600',
145
- flex: 0.9,
146
- },
147
- });
@@ -1,49 +0,0 @@
1
- import {StyleSheet, Text, View} from 'react-native';
2
- import hexadecimalTransparency from '../utils/hexadecimalTransparency';
3
- import React from 'react';
4
- import {isMobileUA} from '../utils/common';
5
-
6
- const RecordingInfo = ({recordingLabel = ''}) => {
7
- return (
8
- <View style={[styles.recordingView]}>
9
- <View style={[styles.recordingStatus]} />
10
- <Text style={styles.recordingText}>{recordingLabel}</Text>
11
- </View>
12
- );
13
- };
14
-
15
- export default RecordingInfo;
16
-
17
- const styles = StyleSheet.create({
18
- recordingView: {
19
- padding: 12,
20
- paddingVertical: isMobileUA() ? 5 : 12,
21
- flexDirection: 'row',
22
- alignItems: 'center',
23
- alignContent: 'center',
24
- justifyContent: 'center',
25
- borderRadius: 24,
26
- backgroundColor: $config.ICON_BG_COLOR,
27
- marginLeft: 8,
28
- borderWidth: 1,
29
- borderColor: $config.CARD_LAYER_3_COLOR,
30
- shadowColor: $config.HARD_CODED_BLACK_COLOR,
31
- shadowOffset: {width: 0, height: 4},
32
- shadowOpacity: 0.1,
33
- shadowRadius: 20,
34
- },
35
- recordingText: {
36
- fontSize: 12,
37
- lineHeight: 12,
38
- fontWeight: '600',
39
- fontFamily: 'Source Sans Pro',
40
- color: $config.SECONDARY_ACTION_COLOR + hexadecimalTransparency['50%'],
41
- },
42
- recordingStatus: {
43
- width: 12,
44
- height: 12,
45
- borderRadius: 6,
46
- backgroundColor: $config.SEMANTIC_ERROR,
47
- marginRight: 8,
48
- },
49
- });
@@ -1,22 +0,0 @@
1
- import {StyleSheet, Text, View} from 'react-native';
2
- import React from 'react';
3
-
4
- interface SpacerProps {
5
- size: number | string;
6
- horizontal?: boolean;
7
- }
8
-
9
- const Spacer = ({size, horizontal = false}: SpacerProps) => {
10
- return (
11
- <View
12
- style={{
13
- width: horizontal ? size : 'auto',
14
- height: !horizontal ? size : 'auto',
15
- }}
16
- />
17
- );
18
- };
19
-
20
- export default Spacer;
21
-
22
- const styles = StyleSheet.create({});
@@ -1,78 +0,0 @@
1
- import {
2
- StyleSheet,
3
- Text,
4
- TouchableOpacity,
5
- TouchableOpacityProps,
6
- ViewStyle,
7
- TextStyle,
8
- } from 'react-native';
9
- import React, {useState} from 'react';
10
- import ThemeConfig from '../theme';
11
- import hexadecimalTransparency from '../utils/hexadecimalTransparency';
12
- import {isWebInternal} from '../utils/common';
13
-
14
- interface ButtonProps extends TouchableOpacityProps {
15
- setRef?: (ref: any) => void;
16
- text?: string;
17
- children?: React.ReactNode;
18
- containerStyle?: ViewStyle;
19
- textStyle?: TextStyle;
20
- }
21
-
22
- const TertiaryButton = (props: ButtonProps) => {
23
- const {text, ...rest} = props;
24
- const [isHovered, setIsHovered] = useState();
25
- return (
26
- <PlatformWrapper setIsHovered={setIsHovered}>
27
- <TouchableOpacity
28
- ref={(ref) => props?.setRef && props.setRef(ref)}
29
- style={[
30
- styles.container,
31
- isHovered
32
- ? {
33
- backgroundColor:
34
- $config.CARD_LAYER_5_COLOR + hexadecimalTransparency['15%'],
35
- }
36
- : {},
37
- props?.containerStyle,
38
- ]}
39
- {...rest}>
40
- <Text style={[styles.text, props?.textStyle]}>{text}</Text>
41
- </TouchableOpacity>
42
- </PlatformWrapper>
43
- );
44
- };
45
- const PlatformWrapper = ({children, setIsHovered}) => {
46
- return isWebInternal() ? (
47
- <div
48
- onMouseEnter={() => {
49
- setIsHovered(true);
50
- }}
51
- onMouseLeave={() => {
52
- setIsHovered(false);
53
- }}>
54
- {children}
55
- </div>
56
- ) : (
57
- children
58
- );
59
- };
60
- export default TertiaryButton;
61
-
62
- const styles = StyleSheet.create({
63
- container: {
64
- paddingHorizontal: 12,
65
- paddingVertical: 11,
66
- borderWidth: 1,
67
- borderColor: $config.SECONDARY_ACTION_COLOR,
68
- borderRadius: ThemeConfig.BorderRadius.small,
69
- justifyContent: 'center',
70
- alignItems: 'center',
71
- },
72
- text: {
73
- color: $config.SECONDARY_ACTION_COLOR,
74
- fontFamily: ThemeConfig.FontFamily.sansPro,
75
- fontSize: ThemeConfig.FontSize.small,
76
- fontWeight: '600',
77
- },
78
- });
@@ -1,47 +0,0 @@
1
- import {StyleSheet, Text, View, Platform} from 'react-native';
2
- import React from 'react';
3
- import CustomSwitch from './CustomSwitch';
4
-
5
- interface SwitchProps {
6
- isEnabled: boolean;
7
- disabled?: boolean;
8
- toggleSwitch: (isEnabled: boolean) => void;
9
- }
10
-
11
- const Toggle = (props: SwitchProps) => {
12
- const {isEnabled, toggleSwitch, disabled = false} = props;
13
- return (
14
- <View>
15
- <CustomSwitch
16
- barHeight={20}
17
- switchWidth={16}
18
- switchHeight={16}
19
- value={isEnabled}
20
- onValueChange={toggleSwitch}
21
- disabled={false}
22
- backgroundActive={$config.PRIMARY_ACTION_BRAND_COLOR}
23
- backgroundInactive={$config.SEMANTIC_NEUTRAL}
24
- circleActiveColor={$config.CARD_LAYER_1_COLOR}
25
- circleInActiveColor={$config.CARD_LAYER_1_COLOR}
26
- // renderInsideCircle={() => <CustomComponent />} // custom component to render inside the Switch circle (Text, Image, etc.)
27
- changeValueImmediately={true} // if rendering inside circle, change state immediately or wait for animation to complete
28
- innerCircleStyle={{
29
- borderWidth: 0,
30
- alignItems: 'center',
31
- justifyContent: 'center',
32
- }} // style for inner animated circle for what you (may) be rendering inside the circle
33
- outerCircleStyle={{}} // style for outer animated circle
34
- renderActiveText={false}
35
- renderInActiveText={false}
36
- switchLeftPx={3} // denominator for logic when sliding to TRUE position. Higher number = more space from RIGHT of the circle to END of the slider
37
- switchRightPx={3} // denominator for logic when sliding to FALSE position. Higher number = more space from LEFT of the circle to BEGINNING of the slider
38
- switchWidthMultiplier={2} // multiplied by the `circleSize` prop to calculate total width of the Switch
39
- switchBorderRadius={30} // Sets the border Radius of the switch slider. If unset, it remains the circleSize.
40
- />
41
- </View>
42
- );
43
- };
44
-
45
- export default Toggle;
46
-
47
- const styles = StyleSheet.create({});
@@ -1,65 +0,0 @@
1
- import RNTooltip from 'react-native-walkthrough-tooltip';
2
- import React, {useState} from 'react';
3
- import {Pressable, Text, TouchableOpacity, View, ViewStyle} from 'react-native';
4
- import ThemeConfig from '../theme';
5
- import hexadecimalTransparency from '../utils/hexadecimalTransparency';
6
-
7
- interface TooltipProps {
8
- activeBgStyle?: ViewStyle;
9
- defaultBgStyle?: ViewStyle;
10
- renderContent: (
11
- isToolTipVisible: boolean,
12
- setToolTipVisible: React.Dispatch<React.SetStateAction<boolean>>,
13
- ) => React.ReactNode;
14
- toolTipMessage: string;
15
- toolTipIcon?: React.ReactNode;
16
- placement?: 'top' | 'bottom' | 'left' | 'right' | 'center';
17
- }
18
- const Tooltip = (props: TooltipProps) => {
19
- const [isToolTipVisible, setToolTipVisible] = useState(false);
20
- const {placement = 'top'} = props;
21
- return (
22
- <RNTooltip
23
- arrowSize={{width: 25, height: 15}}
24
- contentStyle={{
25
- borderRadius: 8,
26
- padding: 12,
27
- backgroundColor: $config.CARD_LAYER_3_COLOR,
28
- }}
29
- tooltipStyle={{
30
- shadowColor: $config.HARD_CODED_BLACK_COLOR,
31
- shadowOffset: {
32
- height: 4,
33
- width: 0,
34
- },
35
- shadowOpacity: 0.1,
36
- elevation: 5,
37
- shadowRadius: 2,
38
- }}
39
- backgroundColor={'transparent'}
40
- isVisible={isToolTipVisible}
41
- content={
42
- <View style={{flex: 1, flexDirection: 'row'}}>
43
- {props?.toolTipIcon ? props.toolTipIcon : <></>}
44
- <Text
45
- style={{
46
- color: $config.FONT_COLOR,
47
- fontFamily: ThemeConfig.FontFamily.sansPro,
48
- fontSize: 16,
49
- fontWeight: '400',
50
- }}>
51
- {props.toolTipMessage}
52
- </Text>
53
- </View>
54
- }
55
- placement={placement}
56
- onClose={() => setToolTipVisible(false)}>
57
- <Pressable
58
- style={isToolTipVisible ? props?.activeBgStyle : props?.defaultBgStyle}
59
- onPress={() => setToolTipVisible(true)}>
60
- {props.renderContent(isToolTipVisible, setToolTipVisible)}
61
- </Pressable>
62
- </RNTooltip>
63
- );
64
- };
65
- export default Tooltip;
@@ -1,94 +0,0 @@
1
- import ReactTooltip from 'react-tooltip';
2
- import React, {useState} from 'react';
3
- import {Text, View, ViewStyle} from 'react-native';
4
-
5
- interface TooltipProps {
6
- activeBgStyle?: ViewStyle;
7
- defaultBgStyle?: ViewStyle;
8
- renderContent: (
9
- isToolTipVisible: boolean,
10
- setToolTipVisible: React.Dispatch<React.SetStateAction<boolean>>,
11
- ) => React.ReactNode;
12
- toolTipMessage: string;
13
- toolTipIcon?: React.ReactNode;
14
- isClickable?: boolean;
15
- placement?: 'top' | 'bottom' | 'left' | 'right';
16
- onPress?: () => void;
17
- }
18
- const Tooltip = (props: TooltipProps) => {
19
- const [isToolTipVisible, setToolTipVisible] = useState(false);
20
- const {isClickable = false, placement = 'top'} = props;
21
- const css = `
22
- .custom-tool-tip{
23
- padding:12px;
24
- border-radius: 8px;
25
- }
26
- .custom-tool-tip div{
27
- font-family: "Source Sans Pro";
28
- font-weight: 400;
29
- font-size: 16px;
30
- }
31
- .__react_component_tooltip.show{
32
- opacity:1;
33
- }
34
- .custom-tool-tip::after {
35
- width: 20px !important;
36
- height: 20px !important;
37
- border-top-right-radius: 5px !important;
38
- bottom: -10px !important;
39
- margin-left: -10px !important;
40
- }`;
41
- const randomString = (
42
- length = 5,
43
- chars = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ',
44
- ) => {
45
- var result = '';
46
- for (var i = length; i > 0; --i)
47
- result += chars[Math.floor(Math.random() * chars.length)];
48
- return result;
49
- };
50
-
51
- const toolTipId = randomString();
52
-
53
- return (
54
- <>
55
- <div
56
- style={{cursor: isClickable ? 'pointer' : 'auto'}}
57
- data-tip
58
- data-event={isClickable ? 'click focus' : 'mouseenter'}
59
- data-event-off={isClickable ? '' : 'mouseleave'}
60
- data-for={toolTipId}
61
- onMouseEnter={() => setToolTipVisible(true)}
62
- onMouseLeave={() => {
63
- setToolTipVisible(false);
64
- }}>
65
- <View
66
- style={
67
- isToolTipVisible ? props?.activeBgStyle : props?.defaultBgStyle
68
- }>
69
- {props.renderContent(isToolTipVisible, setToolTipVisible)}
70
- </View>
71
- </div>
72
- <ReactTooltip
73
- afterShow={() => {
74
- isClickable && props?.onPress && props.onPress();
75
- }}
76
- globalEventOff="click"
77
- id={toolTipId}
78
- backgroundColor={$config.CARD_LAYER_3_COLOR}
79
- className="custom-tool-tip"
80
- place={'top'}
81
- type="dark"
82
- effect="solid">
83
- <style type="text/css">{css}</style>
84
- <View style={{flex: 1, flexDirection: 'row'}}>
85
- {props?.toolTipIcon ? props.toolTipIcon : null}
86
- <Text style={{color: $config.FONT_COLOR}}>
87
- {props.toolTipMessage}
88
- </Text>
89
- </View>
90
- </ReactTooltip>
91
- </>
92
- );
93
- };
94
- export default Tooltip;
@@ -1,60 +0,0 @@
1
- import {StyleSheet, Text, View} from 'react-native';
2
- import React from 'react';
3
- import ThemeConfig from '../theme';
4
- import {isWeb} from '../utils/common';
5
-
6
- function getInitials(name: string) {
7
- if (name && name?.length) {
8
- return name[0].toUpperCase();
9
- }
10
- return 'U';
11
- }
12
-
13
- const UserAvatar = ({name, containerStyle, textStyle}) => {
14
- return (
15
- <View
16
- style={[
17
- containerStyle,
18
- {
19
- alignSelf: 'center',
20
- alignContent: 'center',
21
- justifyContent: 'center',
22
- },
23
- ]}>
24
- <PlatformWrapper>
25
- <Text
26
- style={[
27
- textStyle,
28
- {
29
- fontFamily: ThemeConfig.FontFamily.sansPro,
30
- alignSelf: 'center',
31
- textAlign: 'center',
32
- },
33
- ]}>
34
- {getInitials(name)}
35
- </Text>
36
- </PlatformWrapper>
37
- </View>
38
- );
39
- };
40
-
41
- const PlatformWrapper = ({children}) => {
42
- return isWeb() ? (
43
- <div
44
- style={{
45
- userSelect: 'none',
46
- MozUserSelect: 'none',
47
- WebkitUserSelect: 'none',
48
- msUserSelect: 'none',
49
- alignSelf: 'center',
50
- }}>
51
- {children}
52
- </div>
53
- ) : (
54
- <>{children}</>
55
- );
56
- };
57
-
58
- export default UserAvatar;
59
-
60
- const styles = StyleSheet.create({});
@@ -1,44 +0,0 @@
1
- import {StyleSheet} from 'react-native';
2
- import ThemeConfig from '../theme';
3
- const CommonStyles = StyleSheet.create({
4
- sidePanelContainerWeb: {
5
- flex: 1,
6
- maxWidth: '20%',
7
- minWidth: 338,
8
- borderRadius: ThemeConfig.BorderRadius.small,
9
- marginLeft: 12,
10
- backgroundColor: $config.CARD_LAYER_1_COLOR,
11
- borderColor: $config.CARD_LAYER_3_COLOR,
12
- borderWidth: 1,
13
- shadowColor: $config.HARD_CODED_BLACK_COLOR,
14
- shadowOpacity: 0.2,
15
- shadowOffset: {width: 0, height: 0},
16
- shadowRadius: 20,
17
- overflow: 'hidden',
18
- },
19
- sidePanelContainerNative: {
20
- zIndex: 5,
21
- width: '100%',
22
- height: '100%',
23
- },
24
- sidePanelContainerWebMinimzed: {
25
- position: 'absolute',
26
- zIndex: 5,
27
- width: '96%',
28
- height: '96%',
29
- right: '2%',
30
- left: '2%',
31
- top: '2%',
32
- bottom: '2%',
33
- borderRadius: ThemeConfig.BorderRadius.small,
34
- backgroundColor: $config.CARD_LAYER_1_COLOR,
35
- borderColor: $config.CARD_LAYER_3_COLOR,
36
- borderWidth: 1,
37
- shadowColor: $config.HARD_CODED_BLACK_COLOR,
38
- shadowOpacity: 0.2,
39
- shadowOffset: {width: 0, height: 0},
40
- shadowRadius: 20,
41
- overflow: 'hidden',
42
- },
43
- });
44
- export default CommonStyles;
@@ -1,8 +0,0 @@
1
- import React from 'react';
2
- import Toast from '../../react-native-toast-message';
3
- import ToastConfig from '../subComponents/ToastConfig';
4
-
5
- const ToastComponent = () => {
6
- return <Toast ref={(ref) => Toast.setRef(ref)} config={ToastConfig} />;
7
- };
8
- export default ToastComponent;