react-native-bootpay-api 1.5.2 → 4.0.0-beta.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/src/BootpayWebView.js +100 -57
- package/CHANGELOG.md +0 -29
- package/lib/commonjs/BootpayAnalytics.js +0 -131
- package/lib/commonjs/BootpayAnalytics.js.map +0 -1
- package/lib/commonjs/BootpayWebView.js +0 -281
- package/lib/commonjs/BootpayWebView.js.map +0 -1
- package/lib/commonjs/UserInfo.js +0 -94
- package/lib/commonjs/UserInfo.js.map +0 -1
- package/lib/commonjs/index.d.js +0 -28
- package/lib/commonjs/index.d.js.map +0 -1
- package/lib/commonjs/index.js +0 -28
- package/lib/commonjs/index.js.map +0 -1
- package/lib/commonjs/useBootpay.js +0 -44
- package/lib/commonjs/useBootpay.js.map +0 -1
- package/lib/module/BootpayAnalytics.js +0 -115
- package/lib/module/BootpayAnalytics.js.map +0 -1
- package/lib/module/BootpayWebView.js +0 -259
- package/lib/module/BootpayWebView.js.map +0 -1
- package/lib/module/UserInfo.js +0 -79
- package/lib/module/UserInfo.js.map +0 -1
- package/lib/module/index.d.js +0 -28
- package/lib/module/index.d.js.map +0 -1
- package/lib/module/index.js +0 -21
- package/lib/module/index.js.map +0 -1
- package/lib/module/useBootpay.js +0 -43
- package/lib/module/useBootpay.js.map +0 -1
- package/lib/typescript/UserInfo.d.ts +0 -15
- package/lib/typescript/UserInfo.d.ts.map +0 -1
- package/src/useBootpay.js +0 -51
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["BootpayAnalytics.js"],"names":["base64","DeviceInfo","NativeModules","Aes","userTrace","applicationId","userId","phone","email","gender","birth","area","payload","getVersion","key","getRandomKey","iv","data","encrypt","JSON","stringify","stringToHex","then","cipher","response","fetch","method","headers","Accept","body","session_key","getSessionKey","json","e","console","log","error","pageTrace","url","pageType","items","str","hex","i","l","length","charCodeAt","toString","text","keys","charAt","Math","floor","random","keyValue","encode","ivValue","strEncode","hmac256","hash"],"mappings":"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","sourcesContent":["\n \nimport base64 from 'react-native-base64'\nimport DeviceInfo from 'react-native-device-info';\n\n// import CryptoJS from 'crypto-js'; \nimport { NativeModules } from 'react-native'\nvar Aes = NativeModules.Aes\n\n\nconst userTrace = async (applicationId, userId, phone, email, gender, birth, area) => { \n try { \n const payload = {\n \"id\": userId, \n \"ver\": DeviceInfo.getVersion(),\n \"application_id\": applicationId, \n \"phone\": phone,\n \"email\": email,\n \"gender\": gender,\n \"birth\": birth,\n \"area\": area\n };\n\n var key = getRandomKey(32);\n var iv = getRandomKey(16);\n \n try { \n const data = await Aes.encrypt(JSON.stringify(payload), stringToHex(key), stringToHex(iv)).then(cipher => cipher);\n\n const response = await fetch(\n 'https://analytics.bootpay.co.kr/login',\n {\n method: 'POST',\n headers: {\n Accept: 'application/json',\n 'Content-Type': 'application/json'\n },\n body: JSON.stringify({\n data: data,\n session_key: await getSessionKey(key, iv)\n })\n }\n );\n const json = await response.json();\n return json;\n } catch (e) {\n console.log(e);\n } \n } catch (error) {\n console.error(error);\n }\n}\n\nconst pageTrace = async (applicationId, url, pageType, items) => { \n try { \n const payload = {\n \"application_id\": applicationId, \n \"url\": url, \n \"page_type\": pageType,\n \"items\": items,\n \"referer\": ''\n }; \n\n var key = getRandomKey(32);\n var iv = getRandomKey(16);\n \n try { \n const data = await Aes.encrypt(JSON.stringify(payload), stringToHex(key), stringToHex(iv)).then(cipher => cipher);\n\n const response = await fetch(\n 'https://analytics.bootpay.co.kr/call',\n {\n method: 'POST',\n headers: {\n Accept: 'application/json',\n 'Content-Type': 'application/json'\n },\n body: JSON.stringify({\n data: data,\n session_key: await getSessionKey(key, iv)\n })\n }\n );\n const json = await response.json();\n return json;\n } catch (e) {\n console.log(e);\n } \n } catch (error) {\n console.error(error);\n }\n}\n\nconst stringToHex = (str) => {\n var hex = ''\n for (var i = 0, l = str.length; i < l; i++) {\n hex += str.charCodeAt(i).toString(16)\n }\n return hex\n}\n\nconst getRandomKey = (length) => {\n var text = '';\n var keys = 'abcdefghijklmnopqrstuvwxyz1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ';\n\n for (var i = 0; i < length; i++)\n text += keys.charAt(Math.floor(Math.random() * keys.length));\n\n return text;\n}\n\n\nconst getSessionKey = async (key, iv) => {\n const keyValue = base64.encode(key);\n const ivValue = base64.encode(iv);\n\n return `${keyValue}##${ivValue}`;\n}\n\nconst strEncode = async (str, key, iv) => {\n return await Aes.encrypt(str, key, iv).then(cipher => {\n Aes.hmac256(cipher, key).then(hash => {\n console.log('HMAC', hash)\n return hash;\n })\n })\n\n}\n\nexport { userTrace, pageTrace }\n"]}
|
|
@@ -1,259 +0,0 @@
|
|
|
1
|
-
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
2
|
-
|
|
3
|
-
import React, { Component, useRef, useEffect } from 'react';
|
|
4
|
-
import { SafeAreaView, Modal, Platform, TouchableOpacity, Image, StyleSheet, BackHandler } from 'react-native';
|
|
5
|
-
import WebView from 'react-native-webview-bootpay';
|
|
6
|
-
import UserInfo from './UserInfo';
|
|
7
|
-
export class BootpayWebView extends Component {
|
|
8
|
-
constructor(...args) {
|
|
9
|
-
super(...args);
|
|
10
|
-
|
|
11
|
-
_defineProperty(this, "webView", useRef < WebView > null);
|
|
12
|
-
|
|
13
|
-
_defineProperty(this, "state", {
|
|
14
|
-
visibility: false,
|
|
15
|
-
script: '',
|
|
16
|
-
firstLoad: false
|
|
17
|
-
});
|
|
18
|
-
|
|
19
|
-
_defineProperty(this, "request", async (payload, items, user, extra) => {
|
|
20
|
-
payload.application_id = Platform.OS == 'ios' ? this.props.ios_application_id : this.props.android_application_id;
|
|
21
|
-
payload.items = items;
|
|
22
|
-
payload.user_info = user;
|
|
23
|
-
payload.extra = extra;
|
|
24
|
-
var quickPopup = '';
|
|
25
|
-
|
|
26
|
-
if (extra != undefined && extra.quick_popup != undefined) {
|
|
27
|
-
if (extra.quick_popup == 1) {
|
|
28
|
-
quickPopup = 'BootPay.startQuickPopup();';
|
|
29
|
-
}
|
|
30
|
-
} //visibility가 true가 되면 webview onLoaded가 실행됨
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
this.setState({
|
|
34
|
-
visibility: true,
|
|
35
|
-
script: `
|
|
36
|
-
${await this.getMountJavascript()}
|
|
37
|
-
${quickPopup}
|
|
38
|
-
${this.generateScript(payload)}
|
|
39
|
-
`,
|
|
40
|
-
firstLoad: false,
|
|
41
|
-
showCloseButton: extra.show_close_button || false
|
|
42
|
-
});
|
|
43
|
-
UserInfo.updateInfo();
|
|
44
|
-
});
|
|
45
|
-
|
|
46
|
-
_defineProperty(this, "dismiss", () => {
|
|
47
|
-
this.setState(({
|
|
48
|
-
visibility
|
|
49
|
-
}) => ({
|
|
50
|
-
visibility: false
|
|
51
|
-
}));
|
|
52
|
-
this.removePaymentWindow();
|
|
53
|
-
});
|
|
54
|
-
|
|
55
|
-
_defineProperty(this, "getMountJavascript", async () => {
|
|
56
|
-
return `
|
|
57
|
-
${this.getBootpayPlatform()}
|
|
58
|
-
${await this.getAnalyticsData()}
|
|
59
|
-
`;
|
|
60
|
-
});
|
|
61
|
-
|
|
62
|
-
_defineProperty(this, "generateScript", payload => {
|
|
63
|
-
const onError = '.error(function(data){ window.BootpayRNWebView.postMessage( JSON.stringify(data) ); })';
|
|
64
|
-
const onCancel = '.cancel(function(data){ window.BootpayRNWebView.postMessage( JSON.stringify(data) ); })';
|
|
65
|
-
const onReady = '.ready(function(data){ window.BootpayRNWebView.postMessage( JSON.stringify(data) ); })';
|
|
66
|
-
const onConfirm = '.confirm(function(data){ window.BootpayRNWebView.postMessage( JSON.stringify(data) ); })';
|
|
67
|
-
const onClose = '.close(function(data){ window.BootpayRNWebView.postMessage("close"); })';
|
|
68
|
-
const onDone = '.done(function(data){ window.BootpayRNWebView.postMessage( JSON.stringify(data) ); })';
|
|
69
|
-
return `BootPay.request(${JSON.stringify(payload)})` + onError + onCancel + onReady + onConfirm + onClose + onDone + '; void(0);';
|
|
70
|
-
});
|
|
71
|
-
|
|
72
|
-
_defineProperty(this, "onMessage", ({
|
|
73
|
-
nativeEvent
|
|
74
|
-
}) => {
|
|
75
|
-
if (nativeEvent == undefined || nativeEvent.data == undefined) return;
|
|
76
|
-
|
|
77
|
-
if (nativeEvent.data == 'close') {
|
|
78
|
-
if (this.props.onClose == undefined) return;
|
|
79
|
-
var json = {
|
|
80
|
-
action: 'BootpayClose',
|
|
81
|
-
message: '결제창이 닫혔습니다'
|
|
82
|
-
};
|
|
83
|
-
this.props.onClose(json);
|
|
84
|
-
this.dismiss();
|
|
85
|
-
return;
|
|
86
|
-
}
|
|
87
|
-
|
|
88
|
-
const data = JSON.parse(nativeEvent.data);
|
|
89
|
-
|
|
90
|
-
switch (data.action) {
|
|
91
|
-
case 'BootpayCancel':
|
|
92
|
-
if (this.props.onCancel != undefined) this.props.onCancel(data);
|
|
93
|
-
this.setState({
|
|
94
|
-
visibility: false
|
|
95
|
-
});
|
|
96
|
-
break;
|
|
97
|
-
|
|
98
|
-
case 'BootpayError':
|
|
99
|
-
if (this.props.onError != undefined) this.props.onError(data);
|
|
100
|
-
this.setState({
|
|
101
|
-
visibility: false
|
|
102
|
-
});
|
|
103
|
-
break;
|
|
104
|
-
|
|
105
|
-
case 'BootpayBankReady':
|
|
106
|
-
if (this.props.onReady != undefined) this.props.onReady(data);
|
|
107
|
-
break;
|
|
108
|
-
|
|
109
|
-
case 'BootpayConfirm':
|
|
110
|
-
if (this.props.onConfirm != undefined) this.props.onConfirm(data);
|
|
111
|
-
break;
|
|
112
|
-
|
|
113
|
-
case 'BootpayDone':
|
|
114
|
-
if (this.props.onDone != undefined) this.props.onDone(data);
|
|
115
|
-
this.setState({
|
|
116
|
-
visibility: false
|
|
117
|
-
});
|
|
118
|
-
break;
|
|
119
|
-
}
|
|
120
|
-
});
|
|
121
|
-
|
|
122
|
-
_defineProperty(this, "onShouldStartLoadWithRequest", url => {
|
|
123
|
-
return true;
|
|
124
|
-
});
|
|
125
|
-
|
|
126
|
-
_defineProperty(this, "getBootpayPlatform", () => {
|
|
127
|
-
if (Platform.OS == 'ios') {
|
|
128
|
-
return "BootPay.setDevice('IOS');";
|
|
129
|
-
} else if (Platform.OS == 'android') {
|
|
130
|
-
return "BootPay.setDevice('ANDROID');";
|
|
131
|
-
}
|
|
132
|
-
});
|
|
133
|
-
|
|
134
|
-
_defineProperty(this, "transactionConfirm", data => {
|
|
135
|
-
// console.log('transactionConfirm: ' + data);
|
|
136
|
-
var json = JSON.stringify(data);
|
|
137
|
-
this.callJavaScript(`
|
|
138
|
-
BootPay.transactionConfirm(${json});
|
|
139
|
-
`);
|
|
140
|
-
});
|
|
141
|
-
|
|
142
|
-
_defineProperty(this, "removePaymentWindow", () => {
|
|
143
|
-
this.callJavaScript(`
|
|
144
|
-
BootPay.removePaymentWindow();
|
|
145
|
-
`);
|
|
146
|
-
});
|
|
147
|
-
|
|
148
|
-
_defineProperty(this, "callJavaScript", script => {
|
|
149
|
-
if (this.webView == null || this.webView == undefined) return; // console.log('callJavascript: ' + script);
|
|
150
|
-
|
|
151
|
-
this.webView.injectJavaScript(`
|
|
152
|
-
javascript:(function(){${script} })()
|
|
153
|
-
`); // this.webView.evalu
|
|
154
|
-
});
|
|
155
|
-
|
|
156
|
-
_defineProperty(this, "getAnalyticsData", async () => {
|
|
157
|
-
const uuid = await UserInfo.getBootpayUUID();
|
|
158
|
-
const bootpaySK = await UserInfo.getBootpaySK();
|
|
159
|
-
const bootLastTime = await UserInfo.getBootpayLastTime();
|
|
160
|
-
const elaspedTime = Date.now() - bootLastTime;
|
|
161
|
-
return `window.BootPay.setAnalyticsData({uuid:'${uuid}',sk:'${bootpaySK}',sk_time:${bootLastTime},time:${elaspedTime}});`; // this.callJavaScript(`window.BootPay.setAnalyticsData({uuid:'${uuid}',sk:'${bootpaySK}',sk_time:${bootLastTime},time:${elaspedTime}});`);
|
|
162
|
-
});
|
|
163
|
-
}
|
|
164
|
-
|
|
165
|
-
// canGoBack() {
|
|
166
|
-
// console.log('canGoBack');
|
|
167
|
-
// if(this.webView.current) {
|
|
168
|
-
// return this.webView.current.canGoBack();
|
|
169
|
-
// }
|
|
170
|
-
// return false;
|
|
171
|
-
// }
|
|
172
|
-
// goBack() {
|
|
173
|
-
// console.log('GoBack');
|
|
174
|
-
// if(this.webView.goBack) {
|
|
175
|
-
// this.webView.current.goBack();
|
|
176
|
-
// }
|
|
177
|
-
// }
|
|
178
|
-
async componentWillUnmount() {
|
|
179
|
-
this.setState({
|
|
180
|
-
visibility: false,
|
|
181
|
-
firstLoad: false,
|
|
182
|
-
showCloseButton: false
|
|
183
|
-
});
|
|
184
|
-
UserInfo.setBootpayLastTime(Date.now());
|
|
185
|
-
}
|
|
186
|
-
|
|
187
|
-
render() {
|
|
188
|
-
return /*#__PURE__*/React.createElement(Modal, {
|
|
189
|
-
animationType: 'slide',
|
|
190
|
-
transparent: false // shouldCloseOnOverlayClick={true}
|
|
191
|
-
,
|
|
192
|
-
onRequestClose: () => {
|
|
193
|
-
console.log('onRequestClose');
|
|
194
|
-
this.dismiss();
|
|
195
|
-
},
|
|
196
|
-
visible: this.state.visibility
|
|
197
|
-
}, /*#__PURE__*/React.createElement(SafeAreaView, {
|
|
198
|
-
style: {
|
|
199
|
-
flex: 1
|
|
200
|
-
}
|
|
201
|
-
}, this.state.showCloseButton && /*#__PURE__*/React.createElement(TouchableOpacity, {
|
|
202
|
-
onPress: () => {
|
|
203
|
-
var cancelData = {
|
|
204
|
-
action: 'BootpayCancel',
|
|
205
|
-
message: '사용자에 의해 취소되었습니다'
|
|
206
|
-
};
|
|
207
|
-
var closeData = {
|
|
208
|
-
action: 'BootpayClose',
|
|
209
|
-
message: '결제창이 닫혔습니다'
|
|
210
|
-
};
|
|
211
|
-
if (this.props.onCancel != undefined) this.props.onCancel(cancelData);
|
|
212
|
-
if (this.props.onClose != undefined) this.props.onClose(closeData);
|
|
213
|
-
this.setState({
|
|
214
|
-
visibility: false
|
|
215
|
-
});
|
|
216
|
-
}
|
|
217
|
-
}, /*#__PURE__*/React.createElement(Image, {
|
|
218
|
-
style: [styles.overlay],
|
|
219
|
-
source: require('../images/close.png')
|
|
220
|
-
})), /*#__PURE__*/React.createElement(WebView, {
|
|
221
|
-
ref: wv => this.webView = wv // ref={btWebView}
|
|
222
|
-
,
|
|
223
|
-
useWebKit: true,
|
|
224
|
-
originWhitelist: ['*'],
|
|
225
|
-
source: {
|
|
226
|
-
uri: 'https://inapp.bootpay.co.kr/3.3.3/production.html'
|
|
227
|
-
},
|
|
228
|
-
injectedJavaScript: this.state.script,
|
|
229
|
-
javaScriptEnabled: true,
|
|
230
|
-
javaScriptCanOpenWindowsAutomatically: true // scalesPageToFit={true}
|
|
231
|
-
,
|
|
232
|
-
onMessage: this.onMessage,
|
|
233
|
-
onShouldStartLoadWithRequest: this.onShouldStartLoadWithRequest
|
|
234
|
-
})));
|
|
235
|
-
}
|
|
236
|
-
|
|
237
|
-
}
|
|
238
|
-
var styles = StyleSheet.create({
|
|
239
|
-
container: {
|
|
240
|
-
flex: 1,
|
|
241
|
-
justifyContent: 'center',
|
|
242
|
-
alignItems: 'center',
|
|
243
|
-
backgroundColor: '#F5FCFF'
|
|
244
|
-
},
|
|
245
|
-
welcome: {
|
|
246
|
-
fontSize: 20,
|
|
247
|
-
textAlign: 'center',
|
|
248
|
-
margin: 10
|
|
249
|
-
},
|
|
250
|
-
// Flex to fill, position absolute,
|
|
251
|
-
// Fixed left/top, and the width set to the window width
|
|
252
|
-
overlay: {
|
|
253
|
-
width: 25,
|
|
254
|
-
height: 25,
|
|
255
|
-
right: 5,
|
|
256
|
-
alignSelf: 'flex-end'
|
|
257
|
-
}
|
|
258
|
-
});
|
|
259
|
-
//# sourceMappingURL=BootpayWebView.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["BootpayWebView.js"],"names":["React","Component","useRef","useEffect","SafeAreaView","Modal","Platform","TouchableOpacity","Image","StyleSheet","BackHandler","WebView","UserInfo","BootpayWebView","visibility","script","firstLoad","payload","items","user","extra","application_id","OS","props","ios_application_id","android_application_id","user_info","quickPopup","undefined","quick_popup","setState","getMountJavascript","generateScript","showCloseButton","show_close_button","updateInfo","removePaymentWindow","getBootpayPlatform","getAnalyticsData","onError","onCancel","onReady","onConfirm","onClose","onDone","JSON","stringify","nativeEvent","data","json","action","message","dismiss","parse","url","callJavaScript","webView","injectJavaScript","uuid","getBootpayUUID","bootpaySK","getBootpaySK","bootLastTime","getBootpayLastTime","elaspedTime","Date","now","componentWillUnmount","setBootpayLastTime","render","console","log","state","flex","cancelData","closeData","styles","overlay","require","wv","uri","onMessage","onShouldStartLoadWithRequest","create","container","justifyContent","alignItems","backgroundColor","welcome","fontSize","textAlign","margin","width","height","right","alignSelf"],"mappings":"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","sourcesContent":["\n\nimport React, { Component, useRef, useEffect } from 'react';\nimport { SafeAreaView, Modal, Platform, TouchableOpacity, Image, StyleSheet, BackHandler} from 'react-native';\nimport WebView from 'react-native-webview-bootpay';\nimport UserInfo from './UserInfo'\n\nexport class BootpayWebView extends Component {\n webView = useRef<WebView>(null); \n\n \n state = {\n visibility: false, \n script: '',\n firstLoad: false\n } \n \n // canGoBack() {\n // console.log('canGoBack');\n // if(this.webView.current) {\n // return this.webView.current.canGoBack();\n // }\n // return false;\n // }\n\n // goBack() {\n // console.log('GoBack');\n // if(this.webView.goBack) {\n // this.webView.current.goBack();\n // }\n // }\n\n async componentWillUnmount() {\n this.setState(\n {\n visibility: false, \n firstLoad: false,\n showCloseButton: false\n }\n )\n UserInfo.setBootpayLastTime(Date.now());\n }\n \n render() { \n return <Modal\n animationType={'slide'}\n transparent={false}\n \n // shouldCloseOnOverlayClick={true} \n onRequestClose={()=> {\n console.log('onRequestClose');\n this.dismiss();\n }}\n visible={this.state.visibility}>\n <SafeAreaView style={{ flex: 1 }}>\n {\n this.state.showCloseButton &&\n <TouchableOpacity\n onPress={() => {\n var cancelData = {\n action: 'BootpayCancel',\n message: '사용자에 의해 취소되었습니다'\n }\n var closeData = {\n action: 'BootpayClose',\n message: '결제창이 닫혔습니다'\n }\n \n if(this.props.onCancel != undefined) this.props.onCancel(cancelData);\n if(this.props.onClose != undefined) this.props.onClose(closeData); \n\n this.setState({visibility: false})\n } }>\n <Image \n style={[styles.overlay]}\n source={require('../images/close.png')} />\n </TouchableOpacity>\n }\n <WebView\n ref={(wv) => this.webView = wv}\n // ref={btWebView}\n useWebKit={true}\n originWhitelist={['*']}\n source={{\n uri: 'https://inapp.bootpay.co.kr/3.3.3/production.html'\n }}\n injectedJavaScript={this.state.script}\n javaScriptEnabled={true}\n javaScriptCanOpenWindowsAutomatically={true}\n // scalesPageToFit={true} \n onMessage={this.onMessage}\n onShouldStartLoadWithRequest={this.onShouldStartLoadWithRequest}\n />\n </SafeAreaView>\n\n </Modal>\n }\n\n request = async (payload, items, user, extra) => { \n\n payload.application_id = Platform.OS == 'ios' ? this.props.ios_application_id : this.props.android_application_id;\n payload.items = items;\n payload.user_info = user;\n payload.extra = extra; \n \n\n var quickPopup = '';\n\n if(extra != undefined && extra.quick_popup != undefined) {\n if(extra.quick_popup == 1) {\n quickPopup = 'BootPay.startQuickPopup();';\n }\n } \n \n\n //visibility가 true가 되면 webview onLoaded가 실행됨\n this.setState(\n {\n visibility: true,\n script: `\n ${await this.getMountJavascript()}\n ${quickPopup}\n ${this.generateScript(payload)}\n `,\n firstLoad: false,\n showCloseButton: extra.show_close_button || false \n }\n ) \n\n UserInfo.updateInfo();\n }\n\n dismiss = () => {\n this.setState(\n ({ visibility }) => ({\n visibility: false\n })\n )\n this.removePaymentWindow();\n }\n \n\n getMountJavascript = async () => { \n return `\n ${this.getBootpayPlatform()}\n ${await this.getAnalyticsData()}\n `; \n }\n\n\n generateScript= (payload) => { \n const onError = '.error(function(data){ window.BootpayRNWebView.postMessage( JSON.stringify(data) ); })';\n const onCancel = '.cancel(function(data){ window.BootpayRNWebView.postMessage( JSON.stringify(data) ); })';\n const onReady = '.ready(function(data){ window.BootpayRNWebView.postMessage( JSON.stringify(data) ); })';\n const onConfirm = '.confirm(function(data){ window.BootpayRNWebView.postMessage( JSON.stringify(data) ); })';\n const onClose = '.close(function(data){ window.BootpayRNWebView.postMessage(\"close\"); })';\n const onDone = '.done(function(data){ window.BootpayRNWebView.postMessage( JSON.stringify(data) ); })';\n\n return `BootPay.request(${JSON.stringify(payload)})` + onError + onCancel + onReady + onConfirm + onClose + onDone + '; void(0);';\n }\n\n onMessage = ({ nativeEvent }) => { \n if (nativeEvent == undefined || nativeEvent.data == undefined) return;\n \n if(nativeEvent.data == 'close') {\n if(this.props.onClose == undefined) return;\n var json = {\n action: 'BootpayClose',\n message: '결제창이 닫혔습니다'\n }\n this.props.onClose(json);\n this.dismiss();\n return;\n }\n\n const data = JSON.parse(nativeEvent.data);\n switch (data.action) {\n case 'BootpayCancel':\n if(this.props.onCancel != undefined) this.props.onCancel(data);\n this.setState(\n {\n visibility: false\n }\n )\n break;\n case 'BootpayError':\n if(this.props.onError != undefined) this.props.onError(data);\n this.setState(\n {\n visibility: false\n }\n )\n break;\n case 'BootpayBankReady':\n if(this.props.onReady != undefined) this.props.onReady(data);\n break;\n case 'BootpayConfirm':\n if(this.props.onConfirm != undefined) this.props.onConfirm(data);\n break;\n case 'BootpayDone':\n if(this.props.onDone != undefined) this.props.onDone(data);\n this.setState(\n {\n visibility: false\n }\n )\n break;\n }\n }\n\n onShouldStartLoadWithRequest = (url) => { \n return true;\n }\n\n getBootpayPlatform = () => { \n if(Platform.OS == 'ios') {\n return \"BootPay.setDevice('IOS');\";\n } else if(Platform.OS == 'android'){\n return \"BootPay.setDevice('ANDROID');\"; \n }\n }\n\n // setPayScript = () => {\n // const fullScript = this.generateScript(this.state.script);\n // this.injectJavaScript(fullScript);\n // if(this.state.showCloseButton == true) {\n // if(this.webView == null || this.webView == undefined) return; \n // this.webView.showCloseButton();\n // }\n // } \n\n transactionConfirm = (data) => {\n // console.log('transactionConfirm: ' + data);\n\n var json = JSON.stringify(data)\n this.callJavaScript(`\n BootPay.transactionConfirm(${json});\n `);\n }\n\n removePaymentWindow = () => {\n this.callJavaScript(`\n BootPay.removePaymentWindow();\n `);\n } \n\n callJavaScript = (script) => {\n if(this.webView == null || this.webView == undefined) return;\n\n // console.log('callJavascript: ' + script);\n\n this.webView.injectJavaScript(`\n javascript:(function(){${script} })()\n `);\n // this.webView.evalu\n } \n\n getAnalyticsData = async () => { \n const uuid = await UserInfo.getBootpayUUID(); \n const bootpaySK = await UserInfo.getBootpaySK();\n const bootLastTime = await UserInfo.getBootpayLastTime(); \n\n\n const elaspedTime = Date.now() - bootLastTime; \n return `window.BootPay.setAnalyticsData({uuid:'${uuid}',sk:'${bootpaySK}',sk_time:${bootLastTime},time:${elaspedTime}});`;\n // this.callJavaScript(`window.BootPay.setAnalyticsData({uuid:'${uuid}',sk:'${bootpaySK}',sk_time:${bootLastTime},time:${elaspedTime}});`); \n }\n} \n\n\nvar styles = StyleSheet.create({\n container: {\n flex: 1,\n justifyContent: 'center',\n alignItems: 'center',\n backgroundColor: '#F5FCFF',\n },\n welcome: {\n fontSize: 20,\n textAlign: 'center',\n margin: 10,\n },\n // Flex to fill, position absolute, \n // Fixed left/top, and the width set to the window width\n overlay: { \n width: 25,\n height: 25, \n right: 5,\n alignSelf: 'flex-end'\n } \n });"]}
|
package/lib/module/UserInfo.js
DELETED
|
@@ -1,79 +0,0 @@
|
|
|
1
|
-
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
2
|
-
|
|
3
|
-
import { Component } from 'react';
|
|
4
|
-
import DeviceInfo from 'react-native-device-info';
|
|
5
|
-
import SInfo from 'react-native-sensitive-info';
|
|
6
|
-
export default class UserInfo extends Component {
|
|
7
|
-
static setBootpayLastTime(val) {
|
|
8
|
-
return UserInfo.setBootpayInfo('bootpay_last_time', val);
|
|
9
|
-
}
|
|
10
|
-
|
|
11
|
-
static getBootpayUserId() {
|
|
12
|
-
return UserInfo.getBootpayInfo('bootpay_user_id', '');
|
|
13
|
-
}
|
|
14
|
-
|
|
15
|
-
}
|
|
16
|
-
|
|
17
|
-
_defineProperty(UserInfo, "getBootpayInfo", (key, defaultVal) => {
|
|
18
|
-
return new Promise((resolve, reject) => {
|
|
19
|
-
SInfo.getItem(key, {
|
|
20
|
-
sharedPreferencesName: 'bootpaySharedPrefs',
|
|
21
|
-
keychainService: 'bootpayKeychain'
|
|
22
|
-
}).then(res => {
|
|
23
|
-
res == undefined ? resolve(defaultVal) : resolve(res);
|
|
24
|
-
resolve(res);
|
|
25
|
-
}).catch(error => {
|
|
26
|
-
reject(error);
|
|
27
|
-
});
|
|
28
|
-
});
|
|
29
|
-
});
|
|
30
|
-
|
|
31
|
-
_defineProperty(UserInfo, "setBootpayInfo", (key, val) => {
|
|
32
|
-
return new Promise((resolve, reject) => {
|
|
33
|
-
SInfo.setItem(String(key), String(val), {
|
|
34
|
-
sharedPreferencesName: 'bootpaySharedPrefs',
|
|
35
|
-
keychainService: 'bootpayKeychain'
|
|
36
|
-
}).then(res => {
|
|
37
|
-
resolve(res);
|
|
38
|
-
}).catch(error => {
|
|
39
|
-
reject(error);
|
|
40
|
-
});
|
|
41
|
-
});
|
|
42
|
-
});
|
|
43
|
-
|
|
44
|
-
_defineProperty(UserInfo, "getBootpayUUID", () => {
|
|
45
|
-
let uuid = DeviceInfo.getUniqueId();
|
|
46
|
-
return UserInfo.setBootpayInfo('uuid', uuid);
|
|
47
|
-
});
|
|
48
|
-
|
|
49
|
-
_defineProperty(UserInfo, "getBootpaySK", () => {
|
|
50
|
-
return UserInfo.getBootpayInfo('bootpay_sk', '');
|
|
51
|
-
});
|
|
52
|
-
|
|
53
|
-
_defineProperty(UserInfo, "setBootpaySK", val => {
|
|
54
|
-
return UserInfo.setBootpayInfo('bootpay_sk', val);
|
|
55
|
-
});
|
|
56
|
-
|
|
57
|
-
_defineProperty(UserInfo, "newBootpaySK", (uuid, time) => {
|
|
58
|
-
return UserInfo.setBootpaySK(`${uuid}_${time}`);
|
|
59
|
-
});
|
|
60
|
-
|
|
61
|
-
_defineProperty(UserInfo, "getBootpayLastTime", async () => {
|
|
62
|
-
return await UserInfo.getBootpayInfo('bootpay_last_time', 0);
|
|
63
|
-
});
|
|
64
|
-
|
|
65
|
-
_defineProperty(UserInfo, "setBootpayUserId", val => {
|
|
66
|
-
return UserInfo.setBootpayInfo('bootpay_user_id', val);
|
|
67
|
-
});
|
|
68
|
-
|
|
69
|
-
_defineProperty(UserInfo, "updateInfo", async () => {
|
|
70
|
-
const uuid = await UserInfo.getBootpayUUID();
|
|
71
|
-
const bootpaySK = await UserInfo.getBootpaySK();
|
|
72
|
-
const lastTime = await UserInfo.getBootpayLastTime();
|
|
73
|
-
let current = Date.now();
|
|
74
|
-
if (bootpaySK == '') await UserInfo.newBootpaySK(uuid, current);
|
|
75
|
-
const isExpired = current - lastTime > 30 * 60 * 1000;
|
|
76
|
-
if (isExpired) await UserInfo.newBootpaySK(uuid, current);
|
|
77
|
-
await UserInfo.setBootpayLastTime(current);
|
|
78
|
-
});
|
|
79
|
-
//# sourceMappingURL=UserInfo.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["UserInfo.tsx"],"names":["Component","DeviceInfo","SInfo","UserInfo","setBootpayLastTime","val","setBootpayInfo","getBootpayUserId","getBootpayInfo","key","defaultVal","Promise","resolve","reject","getItem","sharedPreferencesName","keychainService","then","res","undefined","catch","error","setItem","String","uuid","getUniqueId","time","setBootpaySK","getBootpayUUID","bootpaySK","getBootpaySK","lastTime","getBootpayLastTime","current","Date","now","newBootpaySK","isExpired"],"mappings":"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","sourcesContent":["import { Component } from 'react';\nimport DeviceInfo from 'react-native-device-info';\nimport SInfo from 'react-native-sensitive-info'; \n\nexport default class UserInfo extends Component { \n static getBootpayInfo = (key: string, defaultVal: any) => {\n return new Promise((resolve, reject) => {\n SInfo.getItem(key, {\n sharedPreferencesName: 'bootpaySharedPrefs',\n keychainService: 'bootpayKeychain'\n }).then((res: any) => { \n res == undefined ? resolve(defaultVal) : resolve(res); \n resolve(res);\n }).catch((error: any) => { \n reject(error);\n }); \n })\n }\n\n static setBootpayInfo = (key: string, val: any) => {\n return new Promise((resolve, reject) => {\n SInfo.setItem(String(key), String(val), {\n sharedPreferencesName: 'bootpaySharedPrefs',\n keychainService: 'bootpayKeychain'\n }).then((res: any) => { \n resolve(res);\n }).catch((error: any) => { \n reject(error);\n }); \n })\n }\n\n static getBootpayUUID = () => {\n let uuid = DeviceInfo.getUniqueId(); \n return UserInfo.setBootpayInfo('uuid', uuid); \n }\n\n static getBootpaySK = () => {\n return UserInfo.getBootpayInfo('bootpay_sk', ''); \n }\n\n static setBootpaySK = (val: string) => {\n return UserInfo.setBootpayInfo('bootpay_sk', val); \n }\n\n static newBootpaySK = (uuid: string, time: number) => { \n return UserInfo.setBootpaySK(`${uuid}_${time}`); \n }\n\n static getBootpayLastTime = async () => { \n return await UserInfo.getBootpayInfo('bootpay_last_time', 0); \n }\n\n static setBootpayLastTime(val: number){\n return UserInfo.setBootpayInfo('bootpay_last_time', val); \n } \n\n static getBootpayUserId() {\n return UserInfo.getBootpayInfo('bootpay_user_id', ''); \n }\n\n static setBootpayUserId = (val: string) => {\n return UserInfo.setBootpayInfo('bootpay_user_id', val); \n }\n\n static updateInfo = async () => {\n const uuid = await UserInfo.getBootpayUUID() as string; \n const bootpaySK = await UserInfo.getBootpaySK() as string;\n const lastTime = await UserInfo.getBootpayLastTime() as number;\n\n let current = Date.now();\n\n if(bootpaySK == '') await UserInfo.newBootpaySK(uuid, current);\n const isExpired = current - lastTime > 30 * 60 * 1000;\n if(isExpired) await UserInfo.newBootpaySK(uuid, current);\n await UserInfo.setBootpayLastTime(current);\n }\n}"]}
|
package/lib/module/index.d.js
DELETED
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
import { BootpayWebView } from './BootpayWebView';
|
|
2
|
-
import { userTrace, pageTrace } from './BootpayAnalytics';
|
|
3
|
-
export { BootpayWebView, userTrace, pageTrace }; // interface BootpayWebViewProps {
|
|
4
|
-
// ios_application_id: string;
|
|
5
|
-
// android_application_id: string;
|
|
6
|
-
// onCancel: (data: string) => void;
|
|
7
|
-
// onError: (data: string) => void;
|
|
8
|
-
// onReady: (data: string) => void;
|
|
9
|
-
// onConfirm: (data: string) => void;
|
|
10
|
-
// onDone: (data: string) => void;
|
|
11
|
-
// onClose: () => void;
|
|
12
|
-
// }
|
|
13
|
-
// export class BootpayWebView extends Component<BootpayWebViewProps> {
|
|
14
|
-
// request: (payload: Object, items: Object, user: Object, extra: Object) => Promise<string>;
|
|
15
|
-
// dismiss: () => Promise<string>;
|
|
16
|
-
// transactionConfirm: (data: string) => Promise<string>;
|
|
17
|
-
// }
|
|
18
|
-
// export class BootpayAnalytics {
|
|
19
|
-
// static userTrace: () => void;
|
|
20
|
-
// static pageTrace: () => void;
|
|
21
|
-
// }
|
|
22
|
-
// export const userTrace: () => void;
|
|
23
|
-
// export default function pageTrace(): void;
|
|
24
|
-
// export const userTrace: () => void;
|
|
25
|
-
// export default function PageTrace() : void;
|
|
26
|
-
// const Bootpay =
|
|
27
|
-
// export { BootpayWebView, userTrace, pageTrace }
|
|
28
|
-
//# sourceMappingURL=index.d.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["index.d.ts"],"names":["BootpayWebView","userTrace","pageTrace"],"mappings":"AAKA,SAASA,cAAT,QAA+B,kBAA/B;AACA,SAASC,SAAT,EAAoBC,SAApB,QAAqC,oBAArC;AAGA,SAASF,cAAT,EAAyBC,SAAzB,EAAoCC,SAApC,G,CAEA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AAEA;AACA;AACA;AAEA;AAEA;AAEA","sourcesContent":["import { Component, ReactNode } from 'react';\nimport { ViewProperties, EmitterSubscription } from 'react-native';\nimport { EventEmitter } from 'events';\n\n\nimport { BootpayWebView } from './BootpayWebView'\nimport { userTrace, pageTrace } from './BootpayAnalytics'\n\n\nexport { BootpayWebView, userTrace, pageTrace }\n\n// interface BootpayWebViewProps {\n// ios_application_id: string;\n// android_application_id: string;\n\n// onCancel: (data: string) => void;\n// onError: (data: string) => void;\n// onReady: (data: string) => void;\n// onConfirm: (data: string) => void;\n// onDone: (data: string) => void;\n// onClose: () => void;\n// }\n\n// export class BootpayWebView extends Component<BootpayWebViewProps> { \n// request: (payload: Object, items: Object, user: Object, extra: Object) => Promise<string>;\n// dismiss: () => Promise<string>;\n// transactionConfirm: (data: string) => Promise<string>;\n// }\n\n// export class BootpayAnalytics {\n// static userTrace: () => void;\n// static pageTrace: () => void;\n// }\n\n// export const userTrace: () => void;\n// export default function pageTrace(): void;\n// export const userTrace: () => void;\n\n// export default function PageTrace() : void;\n\n// const Bootpay = \n \n// export { BootpayWebView, userTrace, pageTrace }"]}
|
package/lib/module/index.js
DELETED
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
// import { useBootpay } from './useBootpay';
|
|
2
|
-
import { BootpayWebView } from './BootpayWebView';
|
|
3
|
-
import { userTrace, pageTrace } from './BootpayAnalytics';
|
|
4
|
-
export { BootpayWebView, userTrace, pageTrace }; // export { useBootpay };
|
|
5
|
-
// import React, { Component } from 'react';
|
|
6
|
-
// import WebView from 'react-native-webview-bootpay';
|
|
7
|
-
// export class BootpayWebView extends Component {
|
|
8
|
-
// render() {
|
|
9
|
-
// return <WebView
|
|
10
|
-
// useWebKit={true}
|
|
11
|
-
// originWhitelist={['*']}
|
|
12
|
-
// source={{
|
|
13
|
-
// uri: 'https://www.google.com'
|
|
14
|
-
// }}
|
|
15
|
-
// javaScriptEnabled={true}
|
|
16
|
-
// javaScriptCanOpenWindowsAutomatically={true}
|
|
17
|
-
// scalesPageToFit={true}
|
|
18
|
-
// />
|
|
19
|
-
// }
|
|
20
|
-
// }
|
|
21
|
-
//# sourceMappingURL=index.js.map
|
package/lib/module/index.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["index.js"],"names":["BootpayWebView","userTrace","pageTrace"],"mappings":"AACA;AACA,SAASA,cAAT,QAA+B,kBAA/B;AACA,SAASC,SAAT,EAAoBC,SAApB,QAAqC,oBAArC;AAEA,SAAUF,cAAV,EAA0BC,SAA1B,EAAqCC,SAArC,G,CACA;AAEA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","sourcesContent":[" \n// import { useBootpay } from './useBootpay';\nimport { BootpayWebView } from './BootpayWebView'\nimport { userTrace, pageTrace } from './BootpayAnalytics'\n\nexport { BootpayWebView, userTrace, pageTrace };\n// export { useBootpay };\n\n// import React, { Component } from 'react';\n// import WebView from 'react-native-webview-bootpay';\n\n// export class BootpayWebView extends Component {\n// render() {\n// return <WebView \n// useWebKit={true}\n// originWhitelist={['*']}\n// source={{\n// uri: 'https://www.google.com'\n// }}\n// javaScriptEnabled={true}\n// javaScriptCanOpenWindowsAutomatically={true}\n// scalesPageToFit={true} \n// />\n// }\n// } "]}
|
package/lib/module/useBootpay.js
DELETED
|
@@ -1,43 +0,0 @@
|
|
|
1
|
-
// import { useCallback } from 'react';
|
|
2
|
-
// import BootpayAnalytics from './BootpayAnalytics';
|
|
3
|
-
// import BootpayWebView from './BootpayWebView';
|
|
4
|
-
// export const useBootpay = () => {
|
|
5
|
-
// const bootpay = useRef(new BootpayWebView());
|
|
6
|
-
// // const anlaytics = useRef(new BootpayAnalytics());
|
|
7
|
-
// const [bootpayEvents, setBootpayEvents] = useState([]);
|
|
8
|
-
// const request = useCallback((payload, items, user, extra) => {
|
|
9
|
-
// console.log('use call reqeust');
|
|
10
|
-
// return bootpay.current.request(payload, items, user, extra);
|
|
11
|
-
// }, []);
|
|
12
|
-
// const dismiss = useCallback(() => {
|
|
13
|
-
// console.log('use call dismiss');
|
|
14
|
-
// return bootpay.current.dismiss();
|
|
15
|
-
// }, []);
|
|
16
|
-
// const transactionConfirm = useCallback((data) => {
|
|
17
|
-
// console.log('use call transactionConfirm');
|
|
18
|
-
// return bootpay.current.transactionConfirm(data);
|
|
19
|
-
// }, []);
|
|
20
|
-
// const userTrace = useCallback(() => {
|
|
21
|
-
// console.log('user trace click');
|
|
22
|
-
// BootpayAnalytics.userTrace();
|
|
23
|
-
// // return anlaytics.current.userTrace();
|
|
24
|
-
// }, []);
|
|
25
|
-
// const pageTrace = useCallback(() => {
|
|
26
|
-
// BootpayAnalytics.pageTrace();
|
|
27
|
-
// // return anlaytics.current.pageTrace();
|
|
28
|
-
// }, []);
|
|
29
|
-
// return [
|
|
30
|
-
// {
|
|
31
|
-
// bootpayEvents,
|
|
32
|
-
// },
|
|
33
|
-
// {
|
|
34
|
-
// request,
|
|
35
|
-
// transactionConfirm,
|
|
36
|
-
// dismiss,
|
|
37
|
-
// text,
|
|
38
|
-
// userTrace,
|
|
39
|
-
// pageTrace
|
|
40
|
-
// },
|
|
41
|
-
// ];
|
|
42
|
-
// }
|
|
43
|
-
//# sourceMappingURL=useBootpay.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["useBootpay.js"],"names":[],"mappings":"AAAA;AACA;AACA;AAEA;AACA;AACA;AAEA;AAEA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AAEA;AAEA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","sourcesContent":["// import { useCallback } from 'react';\n// import BootpayAnalytics from './BootpayAnalytics';\n// import BootpayWebView from './BootpayWebView'; \n\n// export const useBootpay = () => {\n// const bootpay = useRef(new BootpayWebView());\n// // const anlaytics = useRef(new BootpayAnalytics());\n\n// const [bootpayEvents, setBootpayEvents] = useState([]);\n\n// const request = useCallback((payload, items, user, extra) => {\n// console.log('use call reqeust');\n// return bootpay.current.request(payload, items, user, extra);\n// }, []);\n\n// const dismiss = useCallback(() => {\n// console.log('use call dismiss');\n// return bootpay.current.dismiss();\n// }, []);\n\n// const transactionConfirm = useCallback((data) => {\n// console.log('use call transactionConfirm');\n// return bootpay.current.transactionConfirm(data);\n// }, []);\n\n// const userTrace = useCallback(() => {\n\n// console.log('user trace click');\n// BootpayAnalytics.userTrace();\n// // return anlaytics.current.userTrace();\n// }, []);\n\n// const pageTrace = useCallback(() => {\n// BootpayAnalytics.pageTrace();\n// // return anlaytics.current.pageTrace();\n// }, []);\n\n// return [\n// {\n// bootpayEvents,\n// },\n// {\n// request,\n// transactionConfirm,\n// dismiss,\n// text,\n// userTrace,\n// pageTrace\n// },\n// ];\n// }\n"]}
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import { Component } from 'react';
|
|
2
|
-
export default class UserInfo extends Component {
|
|
3
|
-
static getBootpayInfo: (key: string, defaultVal: any) => Promise<unknown>;
|
|
4
|
-
static setBootpayInfo: (key: string, val: any) => Promise<unknown>;
|
|
5
|
-
static getBootpayUUID: () => Promise<unknown>;
|
|
6
|
-
static getBootpaySK: () => Promise<unknown>;
|
|
7
|
-
static setBootpaySK: (val: string) => Promise<unknown>;
|
|
8
|
-
static newBootpaySK: (uuid: string, time: number) => Promise<unknown>;
|
|
9
|
-
static getBootpayLastTime: () => Promise<unknown>;
|
|
10
|
-
static setBootpayLastTime(val: number): Promise<unknown>;
|
|
11
|
-
static getBootpayUserId(): Promise<unknown>;
|
|
12
|
-
static setBootpayUserId: (val: string) => Promise<unknown>;
|
|
13
|
-
static updateInfo: () => Promise<void>;
|
|
14
|
-
}
|
|
15
|
-
//# sourceMappingURL=UserInfo.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"UserInfo.d.ts","sourceRoot":"","sources":["../../src/UserInfo.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAIlC,MAAM,CAAC,OAAO,OAAO,QAAS,SAAQ,SAAS;IAC3C,MAAM,CAAC,cAAc,QAAS,MAAM,cAAc,GAAG,sBAYpD;IAED,MAAM,CAAC,cAAc,QAAS,MAAM,OAAO,GAAG,sBAW7C;IAED,MAAM,CAAC,cAAc,yBAGpB;IAED,MAAM,CAAC,YAAY,yBAElB;IAED,MAAM,CAAC,YAAY,QAAS,MAAM,sBAEjC;IAED,MAAM,CAAC,YAAY,SAAU,MAAM,QAAQ,MAAM,sBAEhD;IAED,MAAM,CAAC,kBAAkB,yBAExB;IAED,MAAM,CAAC,kBAAkB,CAAC,GAAG,EAAE,MAAM;IAIrC,MAAM,CAAC,gBAAgB;IAIvB,MAAM,CAAC,gBAAgB,QAAS,MAAM,sBAErC;IAED,MAAM,CAAC,UAAU,sBAWhB;CACJ"}
|
package/src/useBootpay.js
DELETED
|
@@ -1,51 +0,0 @@
|
|
|
1
|
-
// import { useCallback } from 'react';
|
|
2
|
-
// import BootpayAnalytics from './BootpayAnalytics';
|
|
3
|
-
// import BootpayWebView from './BootpayWebView';
|
|
4
|
-
|
|
5
|
-
// export const useBootpay = () => {
|
|
6
|
-
// const bootpay = useRef(new BootpayWebView());
|
|
7
|
-
// // const anlaytics = useRef(new BootpayAnalytics());
|
|
8
|
-
|
|
9
|
-
// const [bootpayEvents, setBootpayEvents] = useState([]);
|
|
10
|
-
|
|
11
|
-
// const request = useCallback((payload, items, user, extra) => {
|
|
12
|
-
// console.log('use call reqeust');
|
|
13
|
-
// return bootpay.current.request(payload, items, user, extra);
|
|
14
|
-
// }, []);
|
|
15
|
-
|
|
16
|
-
// const dismiss = useCallback(() => {
|
|
17
|
-
// console.log('use call dismiss');
|
|
18
|
-
// return bootpay.current.dismiss();
|
|
19
|
-
// }, []);
|
|
20
|
-
|
|
21
|
-
// const transactionConfirm = useCallback((data) => {
|
|
22
|
-
// console.log('use call transactionConfirm');
|
|
23
|
-
// return bootpay.current.transactionConfirm(data);
|
|
24
|
-
// }, []);
|
|
25
|
-
|
|
26
|
-
// const userTrace = useCallback(() => {
|
|
27
|
-
|
|
28
|
-
// console.log('user trace click');
|
|
29
|
-
// BootpayAnalytics.userTrace();
|
|
30
|
-
// // return anlaytics.current.userTrace();
|
|
31
|
-
// }, []);
|
|
32
|
-
|
|
33
|
-
// const pageTrace = useCallback(() => {
|
|
34
|
-
// BootpayAnalytics.pageTrace();
|
|
35
|
-
// // return anlaytics.current.pageTrace();
|
|
36
|
-
// }, []);
|
|
37
|
-
|
|
38
|
-
// return [
|
|
39
|
-
// {
|
|
40
|
-
// bootpayEvents,
|
|
41
|
-
// },
|
|
42
|
-
// {
|
|
43
|
-
// request,
|
|
44
|
-
// transactionConfirm,
|
|
45
|
-
// dismiss,
|
|
46
|
-
// text,
|
|
47
|
-
// userTrace,
|
|
48
|
-
// pageTrace
|
|
49
|
-
// },
|
|
50
|
-
// ];
|
|
51
|
-
// }
|