@momo-kits/template 0.89.1-beta.5 → 0.89.1-rc.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/TrustBanner/index.tsx +42 -36
- package/TrustBanner/types.ts +2 -1
- package/package.json +2 -3
package/TrustBanner/index.tsx
CHANGED
|
@@ -1,10 +1,19 @@
|
|
|
1
1
|
import React, {FC, useContext, useEffect, useState} from 'react';
|
|
2
|
-
import {
|
|
2
|
+
import {TouchableOpacity, View} from 'react-native';
|
|
3
3
|
import {TrustBannerCallbackParams, TrustBannerProps} from './types';
|
|
4
4
|
import styles from './styles';
|
|
5
5
|
import {ApplicationContext, Colors, Image, Text} from '@momo-kits/foundation';
|
|
6
6
|
import CustomAvatar from './CustomAvatar';
|
|
7
|
-
|
|
7
|
+
|
|
8
|
+
const dataJsonUrl =
|
|
9
|
+
'https://static.momocdn.net/app/json/component-kits/design_system.json';
|
|
10
|
+
|
|
11
|
+
const defaultIcons = [
|
|
12
|
+
'https://static.momocdn.net/app/img/kits/trustBanner/ic_viettinbank.png',
|
|
13
|
+
'https://static.momocdn.net/app/img/kits/trustBanner/ic_agribank.png',
|
|
14
|
+
'https://static.momocdn.net/app/img/kits/trustBanner/ic_vietcombank.png',
|
|
15
|
+
'https://static.momocdn.net/app/img/kits/trustBanner/ic_bidv.png',
|
|
16
|
+
];
|
|
8
17
|
|
|
9
18
|
const defaultData = {
|
|
10
19
|
content: {
|
|
@@ -13,26 +22,31 @@ const defaultData = {
|
|
|
13
22
|
},
|
|
14
23
|
pciImage: 'https://static.momocdn.net/app/img/kits/trustBanner/pci.png',
|
|
15
24
|
sslImage: 'https://static.momocdn.net/app/img/kits/trustBanner/ssl.png',
|
|
25
|
+
url_config: 'https://momo.vn/an-toan-bao-mat',
|
|
26
|
+
feature_code: 'login_and_security',
|
|
27
|
+
icons: defaultIcons,
|
|
16
28
|
momoImage:
|
|
17
29
|
'https://static.momocdn.net/app/img/kits/trustBanner/ic_momo_secu.png',
|
|
18
|
-
urlConfig: 'login_and_security',
|
|
19
|
-
icons: [
|
|
20
|
-
'https://static.momocdn.net/app/img/kits/trustBanner/ic_viettinbank.png',
|
|
21
|
-
'https://static.momocdn.net/app/img/kits/trustBanner/ic_agribank.png',
|
|
22
|
-
'https://static.momocdn.net/app/img/kits/trustBanner/ic_vietcombank.png',
|
|
23
|
-
'https://static.momocdn.net/app/img/kits/trustBanner/ic_bidv.png',
|
|
24
|
-
],
|
|
25
30
|
};
|
|
26
31
|
|
|
27
32
|
const TrustBanner: FC<TrustBannerProps> = ({
|
|
28
33
|
style,
|
|
29
34
|
screenName = '',
|
|
30
35
|
serviceName = '',
|
|
36
|
+
onPress,
|
|
31
37
|
trackEvent,
|
|
32
38
|
}) => {
|
|
33
39
|
const {theme, language} = useContext(ApplicationContext);
|
|
34
40
|
const [data, setData] = useState(defaultData);
|
|
35
|
-
const {
|
|
41
|
+
const {
|
|
42
|
+
icons,
|
|
43
|
+
sslImage,
|
|
44
|
+
pciImage,
|
|
45
|
+
momoImage,
|
|
46
|
+
url_config,
|
|
47
|
+
content,
|
|
48
|
+
feature_code,
|
|
49
|
+
} = data;
|
|
36
50
|
const trackingParams: TrustBannerCallbackParams = {
|
|
37
51
|
screen_name: screenName,
|
|
38
52
|
service_name: serviceName,
|
|
@@ -44,25 +58,21 @@ const TrustBanner: FC<TrustBannerProps> = ({
|
|
|
44
58
|
fetchJson();
|
|
45
59
|
}, []);
|
|
46
60
|
|
|
47
|
-
const fetchJson = () => {
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
NativeModules?.ConfigsModule?.getConfigSync?.('DESIGN_SYSTEM'),
|
|
51
|
-
);
|
|
52
|
-
const dataJSon = config?.trustBanner;
|
|
61
|
+
const fetchJson = async () => {
|
|
62
|
+
const res = await fetch(dataJsonUrl);
|
|
63
|
+
const dataJSon = await res.json();
|
|
53
64
|
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
console.log(e);
|
|
65
|
+
if (dataJSon && dataJSon?.trustBanner) {
|
|
66
|
+
setData({
|
|
67
|
+
icons: dataJSon.trustBanner.icons || defaultData.icons,
|
|
68
|
+
sslImage: dataJSon.trustBanner.sslImage || defaultData.sslImage,
|
|
69
|
+
pciImage: dataJSon.trustBanner.pciImage || defaultData.pciImage,
|
|
70
|
+
momoImage: dataJSon.trustBanner.momoImage || defaultData.momoImage,
|
|
71
|
+
content: dataJSon.trustBanner.content || defaultData.content,
|
|
72
|
+
url_config: dataJSon.trustBanner.url_config || defaultData.url_config,
|
|
73
|
+
feature_code:
|
|
74
|
+
dataJSon.trustBanner.feature_code || defaultData.feature_code,
|
|
75
|
+
});
|
|
66
76
|
}
|
|
67
77
|
};
|
|
68
78
|
|
|
@@ -107,18 +117,14 @@ const TrustBanner: FC<TrustBannerProps> = ({
|
|
|
107
117
|
};
|
|
108
118
|
|
|
109
119
|
const _onPress = () => {
|
|
110
|
-
trackEvent?.('service_component_clicked', {...trackingParams,
|
|
111
|
-
|
|
112
|
-
MaxApi.openWeb(urlConfig, {}, () => {});
|
|
113
|
-
} else {
|
|
114
|
-
MaxApi.startFeatureCode(urlConfig, {}, () => {});
|
|
115
|
-
}
|
|
120
|
+
trackEvent?.('service_component_clicked', {...trackingParams, url_config});
|
|
121
|
+
onPress?.({...trackingParams, url_config, feature_code});
|
|
116
122
|
};
|
|
117
123
|
|
|
118
124
|
return (
|
|
119
125
|
<TouchableOpacity
|
|
120
126
|
onPress={_onPress}
|
|
121
|
-
activeOpacity={0.7}
|
|
127
|
+
activeOpacity={onPress ? 0.7 : 1}
|
|
122
128
|
style={[style, styles.container]}>
|
|
123
129
|
<Image
|
|
124
130
|
style={styles.momoImage}
|
|
@@ -131,7 +137,7 @@ const TrustBanner: FC<TrustBannerProps> = ({
|
|
|
131
137
|
<Text
|
|
132
138
|
style={styles.message}
|
|
133
139
|
color={theme.colors.text.secondary}
|
|
134
|
-
typography={'
|
|
140
|
+
typography={'description_default_regular'}>
|
|
135
141
|
{content?.[language || 'vi'] || defaultData.content.vi}
|
|
136
142
|
</Text>
|
|
137
143
|
{renderFooter()}
|
package/TrustBanner/types.ts
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@momo-kits/template",
|
|
3
|
-
"version": "0.89.1-
|
|
3
|
+
"version": "0.89.1-rc.1",
|
|
4
4
|
"private": false,
|
|
5
5
|
"main": "index.tsx",
|
|
6
6
|
"dependencies": {},
|
|
@@ -9,8 +9,7 @@
|
|
|
9
9
|
"@momo-kits/carousel": "*",
|
|
10
10
|
"prop-types": "^15.7.2",
|
|
11
11
|
"react": "16.9.0",
|
|
12
|
-
"react-native": ">=0.55"
|
|
13
|
-
"@momo-platform/api": "0.1.67-rc.3"
|
|
12
|
+
"react-native": ">=0.55"
|
|
14
13
|
},
|
|
15
14
|
"license": "MoMo"
|
|
16
15
|
}
|