omnipay-reactnative-sdk 0.4.4 → 0.4.6

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 CHANGED
@@ -52,19 +52,6 @@ android.enableJetifier=true
52
52
  ## Usage
53
53
 
54
54
  ```js
55
- // usage with Omnipay component
56
- import { Omnipay } from 'omnipay-reactnative-sdk';
57
-
58
- <Omnipay
59
- color="#FD7A23"
60
- env="dev"
61
- phoneNumber="08020001111"
62
- publicKey="OMNIPUBKEY_HZA3ERGYEE5XUFGTZDQV_MNKRSTA3-TU"
63
- view="bills"
64
- onEnterFullScreen={() => hideExtraUiElements()}
65
- onExitFullScreen={() => unhideExtraUiElements()}
66
- />;
67
-
68
55
  // usage with useOmnipay hook
69
56
  import { OmnipayProvider, useOmnipay } from 'omnipay-reactnative-sdk';
70
57
 
@@ -77,25 +64,42 @@ import { OmnipayProvider, useOmnipay } from 'omnipay-reactnative-sdk';
77
64
  {/* the rest of your app */}
78
65
  </OmnipayProvider>;
79
66
 
80
- // import useOmnipay hook in the component you need to show the bills sdk in
81
- const { initiateBills } = useOmnipay();
67
+ // import useOmnipay hook in the component you need to show the bills or wallet sdk in
68
+ const { initiateBills, initiateWallet } = useOmnipay();
82
69
 
83
70
  function onBillsClosed() {
84
71
  console.log('sdk is closed..you can do some stuff');
85
72
  }
86
73
 
74
+ function onWalletClosed() {
75
+ console.log('wallet is closed..you can do some stuff');
76
+ }
77
+
87
78
  initiateBills({ phoneNumber: '08020001111', onClose: onBillsClosed });
79
+ initiateWallet({
80
+ phoneNumber: '08020001111',
81
+ onClose: onWalletClosed,
82
+ usesAirtimeData: true,
83
+ usesBills: true,
84
+ usesPaylater: true,
85
+ usesPromo: true,
86
+ usesPos: true,
87
+ usesTransfer: true,
88
+ });
88
89
  ```
89
90
 
90
91
  ### Properties
91
92
 
92
- | Name | Type | Description |
93
- | ----------------- | -------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
94
- | color | String | color of primary buttons and links |
95
- | env | String | dev or prod |
96
- | phoneNumber | String | phone number of the customer |
97
- | publicKey | String | public key of the company on omnipay |
98
- | view | String | the view to render. it accepts only bills |
99
- | onEnterFullScreen | Function | the sdk uses a webview to render the content and might not neccesarily fill up the whole screen. This will be called whenever the sdk needs to show a modal. Other ui elements can be hidden at this point so the modal of the sdk can take up the full width and height of the screen |
100
- | onExitFullScreen | Function | this is when the hidden elements can be made visible again as the sdk is no longer displaying a modal |
101
- | onClose | Function | this is used to notify you when the sdk closes |
93
+ | Name | Type | Description |
94
+ | --------------- | -------- | -------------------------------------------------------- |
95
+ | color | String | color of primary buttons and links |
96
+ | env | String | dev or prod |
97
+ | phoneNumber | String | phone number of the customer |
98
+ | publicKey | String | public key of the company on omnipay |
99
+ | onClose | Function | this is used to notify you when the sdk closes |
100
+ | usesAirtimeData | Boolean | whether to show airtime and data shortcut in wallet view |
101
+ | usesBills | Boolean | whether to show bills shortcut in wallet view |
102
+ | usesPaylater | Boolean | whether to paylater tab in wallet view |
103
+ | usesPromo | Boolean | whether to show promo tab in wallet view |
104
+ | usesPos | Boolean | whether to pos shortcur in wallet view |
105
+ | usesTransfer | Boolean | whether to transfer shortcut in wallet view |
@@ -12,7 +12,8 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
12
12
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
13
13
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
14
14
  let defaultValue = {
15
- initiateBills: () => null
15
+ initiateBills: () => null,
16
+ initiateWallet: () => null
16
17
  };
17
18
  const OmnipayContext = /*#__PURE__*/_react.default.createContext(defaultValue);
18
19
  exports.OmnipayContext = OmnipayContext;
@@ -109,6 +110,26 @@ const OmnipayProvider = _ref => {
109
110
  }
110
111
  console.warn('Omnipay error: Invalid phone number');
111
112
  };
113
+ const _initiateWallet = _ref3 => {
114
+ let {
115
+ phoneNumber,
116
+ onClose,
117
+ usesPaylater = false,
118
+ usesPromo = false,
119
+ usesAirtimeData = false,
120
+ usesTransfer = false,
121
+ usesBills = false,
122
+ usesPos = false
123
+ } = _ref3;
124
+ if (typeof phoneNumber === 'string' && phoneNumber.length === 11) {
125
+ const webUrl = `${webHost}?theme=${color}&view=wallet&publicKey=${publicKey}&phoneNumber=${phoneNumber}&usesPaylater=${usesPaylater}&usesPromo=${usesPromo}&usesAirtimeData=${usesAirtimeData}&usesTransfer=${usesTransfer}&usesBills=${usesBills}&usesPos=${usesPos}`;
126
+ setWebviewUrl(webUrl);
127
+ setIsVisible(true);
128
+ onCloseRef.current = onClose;
129
+ return;
130
+ }
131
+ console.warn('Omnipay error: Invalid phone number');
132
+ };
112
133
  function closeWebview() {
113
134
  setIsVisible(false);
114
135
  if (onCloseRef.current && typeof onCloseRef.current === 'function') {
@@ -118,9 +139,11 @@ const OmnipayProvider = _ref => {
118
139
  }
119
140
  const webviewStyle = getWebviewStyle();
120
141
  const isPropsValid = isValidColor && !!publicKey && isValidEnv;
142
+ const isWalletView = webviewUrl.includes('view=wallet');
121
143
  return /*#__PURE__*/_react.default.createElement(OmnipayContext.Provider, {
122
144
  value: {
123
- initiateBills: _initiateBills
145
+ initiateBills: _initiateBills,
146
+ initiateWallet: _initiateWallet
124
147
  }
125
148
  }, isPropsValid && /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, webviewUrl.includes('view') && /*#__PURE__*/_react.default.createElement(_reactNative.Modal, {
126
149
  visible: showWebview,
@@ -132,9 +155,9 @@ const OmnipayProvider = _ref => {
132
155
  onPress: closeWebview
133
156
  }, /*#__PURE__*/_react.default.createElement(_reactNative.View, {
134
157
  style: [styles.container, {
135
- paddingTop: containerOffset
158
+ paddingTop: isWalletView ? 0 : containerOffset
136
159
  }]
137
- }, containerOffset !== 0 && webviewStatus === 'success' && /*#__PURE__*/_react.default.createElement(_reactNative.TouchableOpacity, {
160
+ }, containerOffset !== 0 && webviewStatus === 'success' && !isWalletView && /*#__PURE__*/_react.default.createElement(_reactNative.TouchableOpacity, {
138
161
  style: styles.close,
139
162
  onPress: closeWebview
140
163
  }, /*#__PURE__*/_react.default.createElement(_reactNative.Image, {
@@ -174,8 +197,10 @@ const styles = _reactNative.StyleSheet.create({
174
197
  webview: {
175
198
  flex: 1,
176
199
  width: '100%',
177
- height: _reactNative.Dimensions.get('window').height - 80,
178
- backgroundColor: 'white'
200
+ height: _reactNative.Dimensions.get('window').height - 70,
201
+ backgroundColor: 'white',
202
+ borderTopRightRadius: 20,
203
+ borderTopLeftRadius: 20
179
204
  },
180
205
  webviewLoader: {
181
206
  zIndex: 3,
@@ -187,7 +212,9 @@ const styles = _reactNative.StyleSheet.create({
187
212
  height: '100%',
188
213
  position: 'absolute',
189
214
  top: 0,
190
- left: 0
215
+ left: 0,
216
+ borderTopRightRadius: 20,
217
+ borderTopLeftRadius: 20
191
218
  },
192
219
  backdrop: {
193
220
  backgroundColor: 'rgba(0,0,0,0.48)',
@@ -200,7 +227,7 @@ const styles = _reactNative.StyleSheet.create({
200
227
  backgroundColor: 'white',
201
228
  borderTopRightRadius: 20,
202
229
  borderTopLeftRadius: 20,
203
- maxHeight: _reactNative.Dimensions.get('window').height - 80,
230
+ maxHeight: _reactNative.Dimensions.get('window').height - 70,
204
231
  flex: 1,
205
232
  position: 'relative'
206
233
  },
@@ -228,8 +255,10 @@ const styles = _reactNative.StyleSheet.create({
228
255
  },
229
256
  contentContainer: {
230
257
  flex: 1,
231
- height: _reactNative.Dimensions.get('window').height - 80,
232
- position: 'relative'
258
+ height: _reactNative.Dimensions.get('window').height - 70,
259
+ position: 'relative',
260
+ borderTopRightRadius: 20,
261
+ borderTopLeftRadius: 20
233
262
  }
234
263
  });
235
264
  //# sourceMappingURL=OmnipayProvider.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["defaultValue","initiateBills","OmnipayContext","React","createContext","OmnipayProvider","children","publicKey","env","color","webviewStatus","setWebviewStatus","useState","isVisible","setIsVisible","webviewRef","useRef","webHost","getWebHost","webviewUrl","setWebviewUrl","showWebview","includes","containerOffset","setContainerOffset","isValidEnv","isValidColor","length","onCloseRef","undefined","getWebviewStyle","opacity","height","width","flex","styles","webview","onWebviewMount","Platform","OS","postMessage","data","current","JSON","stringify","error","onWebviewMessage","e","nativeEvent","eventData","parse","dataKey","dataValue","contactDetails","getContact","Linking","openURL","closeWebview","_initiateBills","phoneNumber","onClose","webUrl","console","warn","webviewStyle","isPropsValid","modal","backdrop","container","paddingTop","close","require","closeIcon","contentContainer","uri","webviewLoader","StyleSheet","create","hide","display","full","Dimensions","get","backgroundColor","zIndex","alignItems","justifyContent","position","top","left","borderTopRightRadius","borderTopLeftRadius","maxHeight","right","borderRadius"],"sourceRoot":"../../src","sources":["OmnipayProvider.tsx"],"mappings":"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"}
1
+ {"version":3,"names":["defaultValue","initiateBills","initiateWallet","OmnipayContext","React","createContext","OmnipayProvider","children","publicKey","env","color","webviewStatus","setWebviewStatus","useState","isVisible","setIsVisible","webviewRef","useRef","webHost","getWebHost","webviewUrl","setWebviewUrl","showWebview","includes","containerOffset","setContainerOffset","isValidEnv","isValidColor","length","onCloseRef","undefined","getWebviewStyle","opacity","height","width","flex","styles","webview","onWebviewMount","Platform","OS","postMessage","data","current","JSON","stringify","error","onWebviewMessage","e","nativeEvent","eventData","parse","dataKey","dataValue","contactDetails","getContact","Linking","openURL","closeWebview","_initiateBills","phoneNumber","onClose","webUrl","console","warn","_initiateWallet","usesPaylater","usesPromo","usesAirtimeData","usesTransfer","usesBills","usesPos","webviewStyle","isPropsValid","isWalletView","modal","backdrop","container","paddingTop","close","require","closeIcon","contentContainer","uri","webviewLoader","StyleSheet","create","hide","display","full","Dimensions","get","backgroundColor","borderTopRightRadius","borderTopLeftRadius","zIndex","alignItems","justifyContent","position","top","left","maxHeight","right","borderRadius"],"sourceRoot":"../../src","sources":["OmnipayProvider.tsx"],"mappings":"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"}
@@ -8,10 +8,12 @@ var _react = require("react");
8
8
  var _OmnipayProvider = require("../components/OmnipayProvider");
9
9
  function useOmnipay() {
10
10
  const {
11
- initiateBills
11
+ initiateBills,
12
+ initiateWallet
12
13
  } = (0, _react.useContext)(_OmnipayProvider.OmnipayContext);
13
14
  return {
14
- initiateBills
15
+ initiateBills,
16
+ initiateWallet
15
17
  };
16
18
  }
17
19
  //# sourceMappingURL=useOmnipay.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["useOmnipay","initiateBills","useContext","OmnipayContext"],"sourceRoot":"../../src","sources":["useOmnipay.tsx"],"mappings":";;;;;;AAAA;AACA;AAKO,SAASA,UAAU,GAAG;EAC3B,MAAM;IAAEC;EAAc,CAAC,GAAG,IAAAC,iBAAU,EAACC,+BAAc,CAAuB;EAC1E,OAAO;IACLF;EACF,CAAC;AACH"}
1
+ {"version":3,"names":["useOmnipay","initiateBills","initiateWallet","useContext","OmnipayContext"],"sourceRoot":"../../src","sources":["useOmnipay.tsx"],"mappings":";;;;;;AAAA;AACA;AAKO,SAASA,UAAU,GAAG;EAC3B,MAAM;IAAEC,aAAa;IAAEC;EAAe,CAAC,GAAG,IAAAC,iBAAU,EAClDC,+BAAc,CACO;EACvB,OAAO;IACLH,aAAa;IACbC;EACF,CAAC;AACH"}
@@ -3,7 +3,8 @@ import { ActivityIndicator, Linking, Platform, StyleSheet, View, Modal, ScrollVi
3
3
  import WebView from 'react-native-webview';
4
4
  import { getContact } from '../functions';
5
5
  let defaultValue = {
6
- initiateBills: () => null
6
+ initiateBills: () => null,
7
+ initiateWallet: () => null
7
8
  };
8
9
  export const OmnipayContext = /*#__PURE__*/React.createContext(defaultValue);
9
10
  export const OmnipayProvider = _ref => {
@@ -99,6 +100,26 @@ export const OmnipayProvider = _ref => {
99
100
  }
100
101
  console.warn('Omnipay error: Invalid phone number');
101
102
  };
103
+ const _initiateWallet = _ref3 => {
104
+ let {
105
+ phoneNumber,
106
+ onClose,
107
+ usesPaylater = false,
108
+ usesPromo = false,
109
+ usesAirtimeData = false,
110
+ usesTransfer = false,
111
+ usesBills = false,
112
+ usesPos = false
113
+ } = _ref3;
114
+ if (typeof phoneNumber === 'string' && phoneNumber.length === 11) {
115
+ const webUrl = `${webHost}?theme=${color}&view=wallet&publicKey=${publicKey}&phoneNumber=${phoneNumber}&usesPaylater=${usesPaylater}&usesPromo=${usesPromo}&usesAirtimeData=${usesAirtimeData}&usesTransfer=${usesTransfer}&usesBills=${usesBills}&usesPos=${usesPos}`;
116
+ setWebviewUrl(webUrl);
117
+ setIsVisible(true);
118
+ onCloseRef.current = onClose;
119
+ return;
120
+ }
121
+ console.warn('Omnipay error: Invalid phone number');
122
+ };
102
123
  function closeWebview() {
103
124
  setIsVisible(false);
104
125
  if (onCloseRef.current && typeof onCloseRef.current === 'function') {
@@ -108,9 +129,11 @@ export const OmnipayProvider = _ref => {
108
129
  }
109
130
  const webviewStyle = getWebviewStyle();
110
131
  const isPropsValid = isValidColor && !!publicKey && isValidEnv;
132
+ const isWalletView = webviewUrl.includes('view=wallet');
111
133
  return /*#__PURE__*/React.createElement(OmnipayContext.Provider, {
112
134
  value: {
113
- initiateBills: _initiateBills
135
+ initiateBills: _initiateBills,
136
+ initiateWallet: _initiateWallet
114
137
  }
115
138
  }, isPropsValid && /*#__PURE__*/React.createElement(React.Fragment, null, webviewUrl.includes('view') && /*#__PURE__*/React.createElement(Modal, {
116
139
  visible: showWebview,
@@ -122,9 +145,9 @@ export const OmnipayProvider = _ref => {
122
145
  onPress: closeWebview
123
146
  }, /*#__PURE__*/React.createElement(View, {
124
147
  style: [styles.container, {
125
- paddingTop: containerOffset
148
+ paddingTop: isWalletView ? 0 : containerOffset
126
149
  }]
127
- }, containerOffset !== 0 && webviewStatus === 'success' && /*#__PURE__*/React.createElement(TouchableOpacity, {
150
+ }, containerOffset !== 0 && webviewStatus === 'success' && !isWalletView && /*#__PURE__*/React.createElement(TouchableOpacity, {
128
151
  style: styles.close,
129
152
  onPress: closeWebview
130
153
  }, /*#__PURE__*/React.createElement(Image, {
@@ -163,8 +186,10 @@ const styles = StyleSheet.create({
163
186
  webview: {
164
187
  flex: 1,
165
188
  width: '100%',
166
- height: Dimensions.get('window').height - 80,
167
- backgroundColor: 'white'
189
+ height: Dimensions.get('window').height - 70,
190
+ backgroundColor: 'white',
191
+ borderTopRightRadius: 20,
192
+ borderTopLeftRadius: 20
168
193
  },
169
194
  webviewLoader: {
170
195
  zIndex: 3,
@@ -176,7 +201,9 @@ const styles = StyleSheet.create({
176
201
  height: '100%',
177
202
  position: 'absolute',
178
203
  top: 0,
179
- left: 0
204
+ left: 0,
205
+ borderTopRightRadius: 20,
206
+ borderTopLeftRadius: 20
180
207
  },
181
208
  backdrop: {
182
209
  backgroundColor: 'rgba(0,0,0,0.48)',
@@ -189,7 +216,7 @@ const styles = StyleSheet.create({
189
216
  backgroundColor: 'white',
190
217
  borderTopRightRadius: 20,
191
218
  borderTopLeftRadius: 20,
192
- maxHeight: Dimensions.get('window').height - 80,
219
+ maxHeight: Dimensions.get('window').height - 70,
193
220
  flex: 1,
194
221
  position: 'relative'
195
222
  },
@@ -217,8 +244,10 @@ const styles = StyleSheet.create({
217
244
  },
218
245
  contentContainer: {
219
246
  flex: 1,
220
- height: Dimensions.get('window').height - 80,
221
- position: 'relative'
247
+ height: Dimensions.get('window').height - 70,
248
+ position: 'relative',
249
+ borderTopRightRadius: 20,
250
+ borderTopLeftRadius: 20
222
251
  }
223
252
  });
224
253
  //# sourceMappingURL=OmnipayProvider.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["React","useRef","useState","ActivityIndicator","Linking","Platform","StyleSheet","View","Modal","ScrollView","Dimensions","TouchableOpacity","Image","TouchableWithoutFeedback","WebView","getContact","defaultValue","initiateBills","OmnipayContext","createContext","OmnipayProvider","children","publicKey","env","color","webviewStatus","setWebviewStatus","isVisible","setIsVisible","webviewRef","webHost","getWebHost","webviewUrl","setWebviewUrl","showWebview","includes","containerOffset","setContainerOffset","isValidEnv","isValidColor","length","onCloseRef","undefined","getWebviewStyle","opacity","height","width","flex","styles","webview","onWebviewMount","OS","postMessage","data","current","JSON","stringify","error","onWebviewMessage","e","nativeEvent","eventData","parse","dataKey","dataValue","contactDetails","openURL","closeWebview","_initiateBills","phoneNumber","onClose","webUrl","console","warn","webviewStyle","isPropsValid","modal","backdrop","container","paddingTop","close","require","closeIcon","contentContainer","uri","webviewLoader","create","hide","display","full","get","backgroundColor","zIndex","alignItems","justifyContent","position","top","left","borderTopRightRadius","borderTopLeftRadius","maxHeight","right","borderRadius"],"sourceRoot":"../../src","sources":["OmnipayProvider.tsx"],"mappings":"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"}
1
+ {"version":3,"names":["React","useRef","useState","ActivityIndicator","Linking","Platform","StyleSheet","View","Modal","ScrollView","Dimensions","TouchableOpacity","Image","TouchableWithoutFeedback","WebView","getContact","defaultValue","initiateBills","initiateWallet","OmnipayContext","createContext","OmnipayProvider","children","publicKey","env","color","webviewStatus","setWebviewStatus","isVisible","setIsVisible","webviewRef","webHost","getWebHost","webviewUrl","setWebviewUrl","showWebview","includes","containerOffset","setContainerOffset","isValidEnv","isValidColor","length","onCloseRef","undefined","getWebviewStyle","opacity","height","width","flex","styles","webview","onWebviewMount","OS","postMessage","data","current","JSON","stringify","error","onWebviewMessage","e","nativeEvent","eventData","parse","dataKey","dataValue","contactDetails","openURL","closeWebview","_initiateBills","phoneNumber","onClose","webUrl","console","warn","_initiateWallet","usesPaylater","usesPromo","usesAirtimeData","usesTransfer","usesBills","usesPos","webviewStyle","isPropsValid","isWalletView","modal","backdrop","container","paddingTop","close","require","closeIcon","contentContainer","uri","webviewLoader","create","hide","display","full","get","backgroundColor","borderTopRightRadius","borderTopLeftRadius","zIndex","alignItems","justifyContent","position","top","left","maxHeight","right","borderRadius"],"sourceRoot":"../../src","sources":["OmnipayProvider.tsx"],"mappings":"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"}
@@ -2,10 +2,12 @@ import { useContext } from 'react';
2
2
  import { OmnipayContext } from '../components/OmnipayProvider';
3
3
  export function useOmnipay() {
4
4
  const {
5
- initiateBills
5
+ initiateBills,
6
+ initiateWallet
6
7
  } = useContext(OmnipayContext);
7
8
  return {
8
- initiateBills
9
+ initiateBills,
10
+ initiateWallet
9
11
  };
10
12
  }
11
13
  //# sourceMappingURL=useOmnipay.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["useContext","OmnipayContext","useOmnipay","initiateBills"],"sourceRoot":"../../src","sources":["useOmnipay.tsx"],"mappings":"AAAA,SAASA,UAAU,QAAQ,OAAO;AAClC,SACEC,cAAc,QAET,+BAA+B;AAEtC,OAAO,SAASC,UAAU,GAAG;EAC3B,MAAM;IAAEC;EAAc,CAAC,GAAGH,UAAU,CAACC,cAAc,CAAuB;EAC1E,OAAO;IACLE;EACF,CAAC;AACH"}
1
+ {"version":3,"names":["useContext","OmnipayContext","useOmnipay","initiateBills","initiateWallet"],"sourceRoot":"../../src","sources":["useOmnipay.tsx"],"mappings":"AAAA,SAASA,UAAU,QAAQ,OAAO;AAClC,SACEC,cAAc,QAET,+BAA+B;AAEtC,OAAO,SAASC,UAAU,GAAG;EAC3B,MAAM;IAAEC,aAAa;IAAEC;EAAe,CAAC,GAAGJ,UAAU,CAClDC,cAAc,CACO;EACvB,OAAO;IACLE,aAAa;IACbC;EACF,CAAC;AACH"}
@@ -9,8 +9,19 @@ declare type InitiateBillsType = {
9
9
  phoneNumber: string;
10
10
  onClose?: () => void;
11
11
  };
12
+ declare type InitiateWalletType = {
13
+ phoneNumber: string;
14
+ usesPaylater?: boolean;
15
+ usesPromo?: boolean;
16
+ usesAirtimeData?: boolean;
17
+ usesTransfer?: boolean;
18
+ usesBills?: boolean;
19
+ usesPos?: boolean;
20
+ onClose?: () => void;
21
+ };
12
22
  export declare type OmnipayContextType = {
13
23
  initiateBills: ({ phoneNumber, onClose }: InitiateBillsType) => void;
24
+ initiateWallet: ({ phoneNumber, onClose, usesPaylater, usesPromo, usesAirtimeData, usesTransfer, usesBills, usesPos, }: InitiateWalletType) => void;
14
25
  };
15
26
  export declare const OmnipayContext: React.Context<OmnipayContextType | null>;
16
27
  export declare const OmnipayProvider: ({ children, publicKey, env, color, }: OmnipayProviderProps) => JSX.Element;
@@ -1 +1 @@
1
- {"version":3,"file":"OmnipayProvider.d.ts","sourceRoot":"","sources":["../../../src/components/OmnipayProvider.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA2B,MAAM,OAAO,CAAC;AAiBhD,aAAK,oBAAoB,GAAG;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,GAAG,EAAE,KAAK,GAAG,MAAM,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,KAAK,CAAC,YAAY,GAAG,KAAK,CAAC,YAAY,EAAE,CAAC;CACrD,CAAC;AAQF,aAAK,iBAAiB,GAAG;IACvB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;CACtB,CAAC;AAEF,oBAAY,kBAAkB,GAAG;IAC/B,aAAa,EAAE,CAAC,EAAE,WAAW,EAAE,OAAO,EAAE,EAAE,iBAAiB,KAAK,IAAI,CAAC;CACtE,CAAC;AAMF,eAAO,MAAM,cAAc,0CAE1B,CAAC;AAEF,eAAO,MAAM,eAAe,yCAKzB,oBAAoB,gBAwJtB,CAAC"}
1
+ {"version":3,"file":"OmnipayProvider.d.ts","sourceRoot":"","sources":["../../../src/components/OmnipayProvider.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA2B,MAAM,OAAO,CAAC;AAiBhD,aAAK,oBAAoB,GAAG;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,GAAG,EAAE,KAAK,GAAG,MAAM,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,KAAK,CAAC,YAAY,GAAG,KAAK,CAAC,YAAY,EAAE,CAAC;CACrD,CAAC;AAQF,aAAK,iBAAiB,GAAG;IACvB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;CACtB,CAAC;AAEF,aAAK,kBAAkB,GAAG;IACxB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;CACtB,CAAC;AAEF,oBAAY,kBAAkB,GAAG;IAC/B,aAAa,EAAE,CAAC,EAAE,WAAW,EAAE,OAAO,EAAE,EAAE,iBAAiB,KAAK,IAAI,CAAC;IACrE,cAAc,EAAE,CAAC,EACf,WAAW,EACX,OAAO,EACP,YAAY,EACZ,SAAS,EACT,eAAe,EACf,YAAY,EACZ,SAAS,EACT,OAAO,GACR,EAAE,kBAAkB,KAAK,IAAI,CAAC;CAChC,CAAC;AAOF,eAAO,MAAM,cAAc,0CAE1B,CAAC;AAEF,eAAO,MAAM,eAAe,yCAKzB,oBAAoB,gBAoLtB,CAAC"}
@@ -3,5 +3,15 @@ export declare function useOmnipay(): {
3
3
  phoneNumber: string;
4
4
  onClose?: (() => void) | undefined;
5
5
  }) => void;
6
+ initiateWallet: ({ phoneNumber, onClose, usesPaylater, usesPromo, usesAirtimeData, usesTransfer, usesBills, usesPos, }: {
7
+ phoneNumber: string;
8
+ usesPaylater?: boolean | undefined;
9
+ usesPromo?: boolean | undefined;
10
+ usesAirtimeData?: boolean | undefined;
11
+ usesTransfer?: boolean | undefined;
12
+ usesBills?: boolean | undefined;
13
+ usesPos?: boolean | undefined;
14
+ onClose?: (() => void) | undefined;
15
+ }) => void;
6
16
  };
7
17
  //# sourceMappingURL=useOmnipay.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"useOmnipay.d.ts","sourceRoot":"","sources":["../../../src/hooks/useOmnipay.tsx"],"names":[],"mappings":"AAMA,wBAAgB,UAAU;;;;;EAKzB"}
1
+ {"version":3,"file":"useOmnipay.d.ts","sourceRoot":"","sources":["../../../src/hooks/useOmnipay.tsx"],"names":[],"mappings":"AAMA,wBAAgB,UAAU;;;;;;;;;;;;;;;EAQzB"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "omnipay-reactnative-sdk",
3
- "version": "0.4.4",
3
+ "version": "0.4.6",
4
4
  "description": "Omnipay react native sdk",
5
5
  "main": "lib/commonjs/index",
6
6
  "module": "lib/module/index",
@@ -33,12 +33,34 @@ type InitiateBillsType = {
33
33
  onClose?: () => void;
34
34
  };
35
35
 
36
+ type InitiateWalletType = {
37
+ phoneNumber: string;
38
+ usesPaylater?: boolean;
39
+ usesPromo?: boolean;
40
+ usesAirtimeData?: boolean;
41
+ usesTransfer?: boolean;
42
+ usesBills?: boolean;
43
+ usesPos?: boolean;
44
+ onClose?: () => void;
45
+ };
46
+
36
47
  export type OmnipayContextType = {
37
48
  initiateBills: ({ phoneNumber, onClose }: InitiateBillsType) => void;
49
+ initiateWallet: ({
50
+ phoneNumber,
51
+ onClose,
52
+ usesPaylater,
53
+ usesPromo,
54
+ usesAirtimeData,
55
+ usesTransfer,
56
+ usesBills,
57
+ usesPos,
58
+ }: InitiateWalletType) => void;
38
59
  };
39
60
 
40
61
  let defaultValue = {
41
62
  initiateBills: () => null,
63
+ initiateWallet: () => null,
42
64
  };
43
65
 
44
66
  export const OmnipayContext = React.createContext<OmnipayContextType | null>(
@@ -133,6 +155,26 @@ export const OmnipayProvider = ({
133
155
  console.warn('Omnipay error: Invalid phone number');
134
156
  };
135
157
 
158
+ const _initiateWallet = ({
159
+ phoneNumber,
160
+ onClose,
161
+ usesPaylater = false,
162
+ usesPromo = false,
163
+ usesAirtimeData = false,
164
+ usesTransfer = false,
165
+ usesBills = false,
166
+ usesPos = false,
167
+ }: InitiateWalletType) => {
168
+ if (typeof phoneNumber === 'string' && phoneNumber.length === 11) {
169
+ const webUrl = `${webHost}?theme=${color}&view=wallet&publicKey=${publicKey}&phoneNumber=${phoneNumber}&usesPaylater=${usesPaylater}&usesPromo=${usesPromo}&usesAirtimeData=${usesAirtimeData}&usesTransfer=${usesTransfer}&usesBills=${usesBills}&usesPos=${usesPos}`;
170
+ setWebviewUrl(webUrl);
171
+ setIsVisible(true);
172
+ onCloseRef.current = onClose;
173
+ return;
174
+ }
175
+ console.warn('Omnipay error: Invalid phone number');
176
+ };
177
+
136
178
  function closeWebview() {
137
179
  setIsVisible(false);
138
180
  if (onCloseRef.current && typeof onCloseRef.current === 'function') {
@@ -143,9 +185,12 @@ export const OmnipayProvider = ({
143
185
 
144
186
  const webviewStyle = getWebviewStyle();
145
187
  const isPropsValid = isValidColor && !!publicKey && isValidEnv;
188
+ const isWalletView = webviewUrl.includes('view=wallet');
146
189
 
147
190
  return (
148
- <OmnipayContext.Provider value={{ initiateBills: _initiateBills }}>
191
+ <OmnipayContext.Provider
192
+ value={{ initiateBills: _initiateBills, initiateWallet: _initiateWallet }}
193
+ >
149
194
  {isPropsValid && (
150
195
  <>
151
196
  {webviewUrl.includes('view') && (
@@ -156,19 +201,24 @@ export const OmnipayProvider = ({
156
201
  onPress={closeWebview}
157
202
  >
158
203
  <View
159
- style={[styles.container, { paddingTop: containerOffset }]}
204
+ style={[
205
+ styles.container,
206
+ { paddingTop: isWalletView ? 0 : containerOffset },
207
+ ]}
160
208
  >
161
- {containerOffset !== 0 && webviewStatus === 'success' && (
162
- <TouchableOpacity
163
- style={styles.close}
164
- onPress={closeWebview}
165
- >
166
- <Image
167
- source={require('../assets/cancel.png')}
168
- style={styles.closeIcon}
169
- />
170
- </TouchableOpacity>
171
- )}
209
+ {containerOffset !== 0 &&
210
+ webviewStatus === 'success' &&
211
+ !isWalletView && (
212
+ <TouchableOpacity
213
+ style={styles.close}
214
+ onPress={closeWebview}
215
+ >
216
+ <Image
217
+ source={require('../assets/cancel.png')}
218
+ style={styles.closeIcon}
219
+ />
220
+ </TouchableOpacity>
221
+ )}
172
222
  <ScrollView contentContainerStyle={styles.contentContainer}>
173
223
  <TouchableWithoutFeedback>
174
224
  <WebView
@@ -216,8 +266,10 @@ const styles = StyleSheet.create({
216
266
  webview: {
217
267
  flex: 1,
218
268
  width: '100%',
219
- height: Dimensions.get('window').height - 80,
269
+ height: Dimensions.get('window').height - 70,
220
270
  backgroundColor: 'white',
271
+ borderTopRightRadius: 20,
272
+ borderTopLeftRadius: 20,
221
273
  },
222
274
  webviewLoader: {
223
275
  zIndex: 3,
@@ -230,6 +282,8 @@ const styles = StyleSheet.create({
230
282
  position: 'absolute',
231
283
  top: 0,
232
284
  left: 0,
285
+ borderTopRightRadius: 20,
286
+ borderTopLeftRadius: 20,
233
287
  },
234
288
  backdrop: {
235
289
  backgroundColor: 'rgba(0,0,0,0.48)',
@@ -242,7 +296,7 @@ const styles = StyleSheet.create({
242
296
  backgroundColor: 'white',
243
297
  borderTopRightRadius: 20,
244
298
  borderTopLeftRadius: 20,
245
- maxHeight: Dimensions.get('window').height - 80,
299
+ maxHeight: Dimensions.get('window').height - 70,
246
300
  flex: 1,
247
301
  position: 'relative',
248
302
  },
@@ -270,7 +324,9 @@ const styles = StyleSheet.create({
270
324
  },
271
325
  contentContainer: {
272
326
  flex: 1,
273
- height: Dimensions.get('window').height - 80,
327
+ height: Dimensions.get('window').height - 70,
274
328
  position: 'relative',
329
+ borderTopRightRadius: 20,
330
+ borderTopLeftRadius: 20,
275
331
  },
276
332
  });
@@ -5,8 +5,11 @@ import {
5
5
  } from '../components/OmnipayProvider';
6
6
 
7
7
  export function useOmnipay() {
8
- const { initiateBills } = useContext(OmnipayContext) as OmnipayContextType;
8
+ const { initiateBills, initiateWallet } = useContext(
9
+ OmnipayContext
10
+ ) as OmnipayContextType;
9
11
  return {
10
12
  initiateBills,
13
+ initiateWallet,
11
14
  };
12
15
  }