omnipay-reactnative-sdk 1.3.4 → 1.3.5

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.
@@ -41,6 +41,7 @@ const OmnipayProvider = _ref => {
41
41
  const isValidColor = color.length > 2;
42
42
  const onCloseRef = (0, _react.useRef)(undefined);
43
43
  const [canUsePos, setCanUsePos] = (0, _react.useState)(false);
44
+ const allowedEvents = _react.default.useMemo(() => analyticsConfig !== null && analyticsConfig !== void 0 && analyticsConfig.allowedEvents && analyticsConfig.allowedEvents.length > 0 ? new Set(analyticsConfig.allowedEvents) : null, [analyticsConfig === null || analyticsConfig === void 0 ? void 0 : analyticsConfig.allowedEvents]);
44
45
  (0, _react.useEffect)(() => {
45
46
  checkPaymentApp();
46
47
  }, []);
@@ -137,63 +138,32 @@ const OmnipayProvider = _ref => {
137
138
  webviewRef.current.postMessage(JSON.stringify(data));
138
139
  } catch (error) {}
139
140
  }
140
- async function onWebviewMessage(e) {
141
- try {
142
- if (e.nativeEvent && e.nativeEvent.data) {
143
- const eventData = JSON.parse(e.nativeEvent.data);
144
- const {
145
- dataKey,
146
- dataValue
147
- } = eventData;
148
- if (dataKey === 'chooseContact') {
149
- const contactDetails = await (0, _functions.getContact)();
150
- postMessage({
151
- dataKey: 'contactSelected',
152
- dataValue: contactDetails
153
- });
154
- }
155
- if (dataKey === 'openLink') {
156
- _reactNative.Linking.openURL(dataValue);
157
- }
158
- if (dataKey === 'modalOpen') {
159
- setContainerOffset(0);
160
- }
161
- if (dataKey === 'modalClosed') {
162
- setContainerOffset(30);
163
- if (dataValue === 'closeSdk') {
164
- closeWebview();
165
- }
166
- }
167
- if (dataKey === 'closeSdk') {
168
- closeWebview();
169
- }
170
- if (dataKey === 'shareReceipt') {
171
- shareReceipt(dataValue);
172
- }
173
- if (dataKey === 'startPosTransaction') {
174
- startPosTransaction(JSON.parse(dataValue));
175
- }
176
- if (dataKey === 'analyticsEvent' && analyticsConfig !== null && analyticsConfig !== void 0 && analyticsConfig.onEvent) {
177
- try {
178
- const payload = typeof dataValue === 'string' ? JSON.parse(dataValue) : dataValue;
179
- const {
180
- eventName,
181
- eventProperties
182
- } = payload;
183
- if (eventName) {
184
- const shouldForward = !analyticsConfig.allowedEvents || analyticsConfig.allowedEvents.length === 0 || analyticsConfig.allowedEvents.includes(eventName);
185
- if (shouldForward) {
186
- analyticsConfig.onEvent(eventName, eventProperties || {});
187
- }
188
- }
189
- } catch (error) {
190
- console.warn('Omnipay analytics error:', error);
191
- }
192
- }
193
- }
194
- } catch (error) {}
195
- }
196
- async function shareReceipt(receiptData) {
141
+ const handleChooseContact = async () => {
142
+ const contactDetails = await (0, _functions.getContact)();
143
+ postMessage({
144
+ dataKey: 'contactSelected',
145
+ dataValue: contactDetails
146
+ });
147
+ };
148
+ const handleOpenLink = dataValue => {
149
+ if (typeof dataValue === 'string') {
150
+ _reactNative.Linking.openURL(dataValue);
151
+ }
152
+ };
153
+ const handleModalOpen = () => {
154
+ setContainerOffset(0);
155
+ };
156
+ const handleModalClosed = dataValue => {
157
+ setContainerOffset(30);
158
+ if (dataValue === 'closeSdk') {
159
+ closeWebview();
160
+ }
161
+ };
162
+ const handleCloseSdk = () => {
163
+ closeWebview();
164
+ };
165
+ const handleShareReceipt = async receiptData => {
166
+ if (typeof receiptData !== 'string') return;
197
167
  try {
198
168
  const {
199
169
  fileName = '',
@@ -204,7 +174,71 @@ const OmnipayProvider = _ref => {
204
174
  filename: _reactNative.Platform.OS === 'android' ? fileName : `${fileName}.jpg`
205
175
  });
206
176
  } catch (error) {
207
- console.log(error);
177
+ console.log('Error sharing receipt:', error);
178
+ }
179
+ };
180
+ const handlePosTransaction = dataValue => {
181
+ if (typeof dataValue !== 'string') return;
182
+ try {
183
+ startPosTransaction(JSON.parse(dataValue));
184
+ } catch (error) {
185
+ console.warn('Error parsing POS transaction data:', error);
186
+ }
187
+ };
188
+ const handleAnalyticsEvent = dataValue => {
189
+ if (!(analyticsConfig !== null && analyticsConfig !== void 0 && analyticsConfig.onEvent)) {
190
+ return;
191
+ }
192
+ try {
193
+ const payload = typeof dataValue === 'string' ? JSON.parse(dataValue) : dataValue;
194
+ const {
195
+ eventName,
196
+ eventProperties
197
+ } = payload;
198
+ if (typeof eventName === 'string' && eventName.trim()) {
199
+ const shouldForward = !allowedEvents || allowedEvents.has(eventName);
200
+ if (shouldForward) {
201
+ analyticsConfig.onEvent(eventName, eventProperties || {});
202
+ }
203
+ } else {
204
+ console.warn('Omnipay analytics: Invalid event name', eventName);
205
+ }
206
+ } catch (error) {
207
+ console.warn('Omnipay analytics error:', error);
208
+ }
209
+ };
210
+
211
+ /**
212
+ * Maps message keys to handlers for O(1) lookup and easy extensibility.
213
+ * Add new message types here instead of chaining if statements.
214
+ */
215
+ const messageHandlers = {
216
+ chooseContact: handleChooseContact,
217
+ openLink: handleOpenLink,
218
+ modalOpen: handleModalOpen,
219
+ modalClosed: handleModalClosed,
220
+ closeSdk: handleCloseSdk,
221
+ shareReceipt: handleShareReceipt,
222
+ startPosTransaction: handlePosTransaction,
223
+ analyticsEvent: handleAnalyticsEvent
224
+ };
225
+ async function onWebviewMessage(e) {
226
+ try {
227
+ var _e$nativeEvent;
228
+ if (!((_e$nativeEvent = e.nativeEvent) !== null && _e$nativeEvent !== void 0 && _e$nativeEvent.data)) {
229
+ return;
230
+ }
231
+ const eventData = JSON.parse(e.nativeEvent.data);
232
+ const {
233
+ dataKey,
234
+ dataValue
235
+ } = eventData;
236
+ const handler = messageHandlers[dataKey];
237
+ if (handler) {
238
+ await handler(dataValue);
239
+ }
240
+ } catch (error) {
241
+ console.warn('Error handling webview message:', error);
208
242
  }
209
243
  }
210
244
  const _initiateBills = _ref3 => {
@@ -214,7 +248,7 @@ const OmnipayProvider = _ref => {
214
248
  metadata = {}
215
249
  } = _ref3;
216
250
  if (typeof phoneNumber === 'string' && phoneNumber.length >= 10) {
217
- // Encrypt sensitive parameters
251
+ // Encrypt params to prevent exposure of sensitive data in URL/logs
218
252
  const params = {
219
253
  theme: color,
220
254
  view: 'bills',
@@ -255,7 +289,7 @@ const OmnipayProvider = _ref => {
255
289
  promoName = '',
256
290
  metadata = {}
257
291
  } = _ref4;
258
- //prevent opening if it's already open
292
+ // Guard against race conditions when wallet is already initializing/visible
259
293
  if (visibilityRef.current) {
260
294
  return;
261
295
  }
@@ -264,7 +298,7 @@ const OmnipayProvider = _ref => {
264
298
  const isValidUserRef = !!userRef && !!userRef.trim();
265
299
  const usesNativeShare = true;
266
300
  if (isPhoneNumberValid || isValidCustomerRef || isValidUserRef) {
267
- // Encrypt sensitive parameters
301
+ // Encrypt params to prevent exposure of PII and API keys in URL/logs
268
302
  const params = {
269
303
  theme: color,
270
304
  view: 'wallet',
@@ -330,7 +364,8 @@ const OmnipayProvider = _ref => {
330
364
  activeOpacity: 1,
331
365
  onPress: closeWebview
332
366
  }, /*#__PURE__*/_react.default.createElement(_reactNative.View, {
333
- style: [styles.container, /* eslint-disable react-native/no-inline-styles */
367
+ style: [styles.container,
368
+ // Dynamic padding based on modal state - inline style needed for animation
334
369
  {
335
370
  paddingTop: isWalletView ? 0 : containerOffset
336
371
  }]
@@ -1 +1 @@
1
- {"version":3,"names":["OmnipayActivity","NativeModules","defaultValue","initiateBills","initiateWallet","OmnipayContext","React","createContext","OmnipayProvider","children","publicKey","env","color","analyticsConfig","webviewStatus","setWebviewStatus","useState","isVisible","setIsVisible","webviewRef","useRef","visibilityRef","webHost","getWebHost","webviewUrl","setWebviewUrl","showWebview","includes","containerOffset","setContainerOffset","isValidEnv","isValidColor","length","onCloseRef","undefined","canUsePos","setCanUsePos","useEffect","checkPaymentApp","current","eventEmitter","NativeEventEmitter","addListener","event","console","log","Platform","OS","isInstalled","isPackageInstalled","error","startPosTransaction","amount","purchaseType","print","rrn","stan","terminalId","result","isKeyExchanged","AsyncStorage","getItem","initiateHorizonTransaction","toLowerCase","setItem","postMessage","dataKey","dataValue","getWebviewStyle","opacity","height","width","flex","styles","webview","onWebviewMount","data","JSON","stringify","onWebviewMessage","e","nativeEvent","eventData","parse","contactDetails","getContact","Linking","openURL","closeWebview","shareReceipt","onEvent","payload","eventName","eventProperties","shouldForward","allowedEvents","warn","receiptData","fileName","image","Share","open","url","filename","_initiateBills","phoneNumber","onClose","metadata","params","theme","view","encryptedPayload","encryptUrlParams","webUrl","_initiateWallet","customerRef","userRef","usesPaylater","usesPromo","usesAirtimeData","usesTransfer","usesBills","usesPos","promoBalanceOffset","deviceId","deviceName","hideWalletTransfer","isBvnValidationRequired","walletTab","sessionId","kycStatus","launchPage","promoName","isPhoneNumberValid","isValidCustomerRef","trim","isValidUserRef","usesNativeShare","bvnRequired","isPosEnabled","reloadWebview","reload","webviewStyle","isPropsValid","isWalletView","modal","backdrop","container","paddingTop","close","require","closeIcon","contentContainer","uri","StyleSheet","absoluteFillObject","errorContainer","errorSubtitle","button","backgroundColor","borderColor","buttonText","webviewLoader","create","hide","display","full","Dimensions","get","borderTopRightRadius","borderTopLeftRadius","zIndex","alignItems","justifyContent","position","top","left","maxHeight","overflow","right","borderRadius","testContent","paddingLeft","testTwoContent","textAlign","fontSize","marginBottom","paddingHorizontal","marginTop","retryButton","minWidth","marginHorizontal","paddingVertical","borderWidth"],"sourceRoot":"../../src","sources":["OmnipayProvider.tsx"],"mappings":"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"}
1
+ {"version":3,"names":["OmnipayActivity","NativeModules","defaultValue","initiateBills","initiateWallet","OmnipayContext","React","createContext","OmnipayProvider","children","publicKey","env","color","analyticsConfig","webviewStatus","setWebviewStatus","useState","isVisible","setIsVisible","webviewRef","useRef","visibilityRef","webHost","getWebHost","webviewUrl","setWebviewUrl","showWebview","includes","containerOffset","setContainerOffset","isValidEnv","isValidColor","length","onCloseRef","undefined","canUsePos","setCanUsePos","allowedEvents","useMemo","Set","useEffect","checkPaymentApp","current","eventEmitter","NativeEventEmitter","addListener","event","console","log","Platform","OS","isInstalled","isPackageInstalled","error","startPosTransaction","amount","purchaseType","print","rrn","stan","terminalId","result","isKeyExchanged","AsyncStorage","getItem","initiateHorizonTransaction","toLowerCase","setItem","postMessage","dataKey","dataValue","getWebviewStyle","opacity","height","width","flex","styles","webview","onWebviewMount","data","JSON","stringify","handleChooseContact","contactDetails","getContact","handleOpenLink","Linking","openURL","handleModalOpen","handleModalClosed","closeWebview","handleCloseSdk","handleShareReceipt","receiptData","fileName","image","parse","Share","open","url","filename","handlePosTransaction","warn","handleAnalyticsEvent","onEvent","payload","eventName","eventProperties","trim","shouldForward","has","messageHandlers","chooseContact","openLink","modalOpen","modalClosed","closeSdk","shareReceipt","analyticsEvent","onWebviewMessage","e","nativeEvent","eventData","handler","_initiateBills","phoneNumber","onClose","metadata","params","theme","view","encryptedPayload","encryptUrlParams","webUrl","_initiateWallet","customerRef","userRef","usesPaylater","usesPromo","usesAirtimeData","usesTransfer","usesBills","usesPos","promoBalanceOffset","deviceId","deviceName","hideWalletTransfer","isBvnValidationRequired","walletTab","sessionId","kycStatus","launchPage","promoName","isPhoneNumberValid","isValidCustomerRef","isValidUserRef","usesNativeShare","bvnRequired","isPosEnabled","reloadWebview","reload","webviewStyle","isPropsValid","isWalletView","modal","backdrop","container","paddingTop","close","require","closeIcon","contentContainer","uri","StyleSheet","absoluteFillObject","errorContainer","errorSubtitle","button","backgroundColor","borderColor","buttonText","webviewLoader","create","hide","display","full","Dimensions","get","borderTopRightRadius","borderTopLeftRadius","zIndex","alignItems","justifyContent","position","top","left","maxHeight","overflow","right","borderRadius","testContent","paddingLeft","testTwoContent","textAlign","fontSize","marginBottom","paddingHorizontal","marginTop","retryButton","minWidth","marginHorizontal","paddingVertical","borderWidth"],"sourceRoot":"../../src","sources":["OmnipayProvider.tsx"],"mappings":"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"}
@@ -31,6 +31,7 @@ export const OmnipayProvider = _ref => {
31
31
  const isValidColor = color.length > 2;
32
32
  const onCloseRef = useRef(undefined);
33
33
  const [canUsePos, setCanUsePos] = useState(false);
34
+ const allowedEvents = React.useMemo(() => analyticsConfig !== null && analyticsConfig !== void 0 && analyticsConfig.allowedEvents && analyticsConfig.allowedEvents.length > 0 ? new Set(analyticsConfig.allowedEvents) : null, [analyticsConfig === null || analyticsConfig === void 0 ? void 0 : analyticsConfig.allowedEvents]);
34
35
  useEffect(() => {
35
36
  checkPaymentApp();
36
37
  }, []);
@@ -127,63 +128,32 @@ export const OmnipayProvider = _ref => {
127
128
  webviewRef.current.postMessage(JSON.stringify(data));
128
129
  } catch (error) {}
129
130
  }
130
- async function onWebviewMessage(e) {
131
- try {
132
- if (e.nativeEvent && e.nativeEvent.data) {
133
- const eventData = JSON.parse(e.nativeEvent.data);
134
- const {
135
- dataKey,
136
- dataValue
137
- } = eventData;
138
- if (dataKey === 'chooseContact') {
139
- const contactDetails = await getContact();
140
- postMessage({
141
- dataKey: 'contactSelected',
142
- dataValue: contactDetails
143
- });
144
- }
145
- if (dataKey === 'openLink') {
146
- Linking.openURL(dataValue);
147
- }
148
- if (dataKey === 'modalOpen') {
149
- setContainerOffset(0);
150
- }
151
- if (dataKey === 'modalClosed') {
152
- setContainerOffset(30);
153
- if (dataValue === 'closeSdk') {
154
- closeWebview();
155
- }
156
- }
157
- if (dataKey === 'closeSdk') {
158
- closeWebview();
159
- }
160
- if (dataKey === 'shareReceipt') {
161
- shareReceipt(dataValue);
162
- }
163
- if (dataKey === 'startPosTransaction') {
164
- startPosTransaction(JSON.parse(dataValue));
165
- }
166
- if (dataKey === 'analyticsEvent' && analyticsConfig !== null && analyticsConfig !== void 0 && analyticsConfig.onEvent) {
167
- try {
168
- const payload = typeof dataValue === 'string' ? JSON.parse(dataValue) : dataValue;
169
- const {
170
- eventName,
171
- eventProperties
172
- } = payload;
173
- if (eventName) {
174
- const shouldForward = !analyticsConfig.allowedEvents || analyticsConfig.allowedEvents.length === 0 || analyticsConfig.allowedEvents.includes(eventName);
175
- if (shouldForward) {
176
- analyticsConfig.onEvent(eventName, eventProperties || {});
177
- }
178
- }
179
- } catch (error) {
180
- console.warn('Omnipay analytics error:', error);
181
- }
182
- }
183
- }
184
- } catch (error) {}
185
- }
186
- async function shareReceipt(receiptData) {
131
+ const handleChooseContact = async () => {
132
+ const contactDetails = await getContact();
133
+ postMessage({
134
+ dataKey: 'contactSelected',
135
+ dataValue: contactDetails
136
+ });
137
+ };
138
+ const handleOpenLink = dataValue => {
139
+ if (typeof dataValue === 'string') {
140
+ Linking.openURL(dataValue);
141
+ }
142
+ };
143
+ const handleModalOpen = () => {
144
+ setContainerOffset(0);
145
+ };
146
+ const handleModalClosed = dataValue => {
147
+ setContainerOffset(30);
148
+ if (dataValue === 'closeSdk') {
149
+ closeWebview();
150
+ }
151
+ };
152
+ const handleCloseSdk = () => {
153
+ closeWebview();
154
+ };
155
+ const handleShareReceipt = async receiptData => {
156
+ if (typeof receiptData !== 'string') return;
187
157
  try {
188
158
  const {
189
159
  fileName = '',
@@ -194,7 +164,71 @@ export const OmnipayProvider = _ref => {
194
164
  filename: Platform.OS === 'android' ? fileName : `${fileName}.jpg`
195
165
  });
196
166
  } catch (error) {
197
- console.log(error);
167
+ console.log('Error sharing receipt:', error);
168
+ }
169
+ };
170
+ const handlePosTransaction = dataValue => {
171
+ if (typeof dataValue !== 'string') return;
172
+ try {
173
+ startPosTransaction(JSON.parse(dataValue));
174
+ } catch (error) {
175
+ console.warn('Error parsing POS transaction data:', error);
176
+ }
177
+ };
178
+ const handleAnalyticsEvent = dataValue => {
179
+ if (!(analyticsConfig !== null && analyticsConfig !== void 0 && analyticsConfig.onEvent)) {
180
+ return;
181
+ }
182
+ try {
183
+ const payload = typeof dataValue === 'string' ? JSON.parse(dataValue) : dataValue;
184
+ const {
185
+ eventName,
186
+ eventProperties
187
+ } = payload;
188
+ if (typeof eventName === 'string' && eventName.trim()) {
189
+ const shouldForward = !allowedEvents || allowedEvents.has(eventName);
190
+ if (shouldForward) {
191
+ analyticsConfig.onEvent(eventName, eventProperties || {});
192
+ }
193
+ } else {
194
+ console.warn('Omnipay analytics: Invalid event name', eventName);
195
+ }
196
+ } catch (error) {
197
+ console.warn('Omnipay analytics error:', error);
198
+ }
199
+ };
200
+
201
+ /**
202
+ * Maps message keys to handlers for O(1) lookup and easy extensibility.
203
+ * Add new message types here instead of chaining if statements.
204
+ */
205
+ const messageHandlers = {
206
+ chooseContact: handleChooseContact,
207
+ openLink: handleOpenLink,
208
+ modalOpen: handleModalOpen,
209
+ modalClosed: handleModalClosed,
210
+ closeSdk: handleCloseSdk,
211
+ shareReceipt: handleShareReceipt,
212
+ startPosTransaction: handlePosTransaction,
213
+ analyticsEvent: handleAnalyticsEvent
214
+ };
215
+ async function onWebviewMessage(e) {
216
+ try {
217
+ var _e$nativeEvent;
218
+ if (!((_e$nativeEvent = e.nativeEvent) !== null && _e$nativeEvent !== void 0 && _e$nativeEvent.data)) {
219
+ return;
220
+ }
221
+ const eventData = JSON.parse(e.nativeEvent.data);
222
+ const {
223
+ dataKey,
224
+ dataValue
225
+ } = eventData;
226
+ const handler = messageHandlers[dataKey];
227
+ if (handler) {
228
+ await handler(dataValue);
229
+ }
230
+ } catch (error) {
231
+ console.warn('Error handling webview message:', error);
198
232
  }
199
233
  }
200
234
  const _initiateBills = _ref3 => {
@@ -204,7 +238,7 @@ export const OmnipayProvider = _ref => {
204
238
  metadata = {}
205
239
  } = _ref3;
206
240
  if (typeof phoneNumber === 'string' && phoneNumber.length >= 10) {
207
- // Encrypt sensitive parameters
241
+ // Encrypt params to prevent exposure of sensitive data in URL/logs
208
242
  const params = {
209
243
  theme: color,
210
244
  view: 'bills',
@@ -245,7 +279,7 @@ export const OmnipayProvider = _ref => {
245
279
  promoName = '',
246
280
  metadata = {}
247
281
  } = _ref4;
248
- //prevent opening if it's already open
282
+ // Guard against race conditions when wallet is already initializing/visible
249
283
  if (visibilityRef.current) {
250
284
  return;
251
285
  }
@@ -254,7 +288,7 @@ export const OmnipayProvider = _ref => {
254
288
  const isValidUserRef = !!userRef && !!userRef.trim();
255
289
  const usesNativeShare = true;
256
290
  if (isPhoneNumberValid || isValidCustomerRef || isValidUserRef) {
257
- // Encrypt sensitive parameters
291
+ // Encrypt params to prevent exposure of PII and API keys in URL/logs
258
292
  const params = {
259
293
  theme: color,
260
294
  view: 'wallet',
@@ -320,7 +354,8 @@ export const OmnipayProvider = _ref => {
320
354
  activeOpacity: 1,
321
355
  onPress: closeWebview
322
356
  }, /*#__PURE__*/React.createElement(View, {
323
- style: [styles.container, /* eslint-disable react-native/no-inline-styles */
357
+ style: [styles.container,
358
+ // Dynamic padding based on modal state - inline style needed for animation
324
359
  {
325
360
  paddingTop: isWalletView ? 0 : containerOffset
326
361
  }]
@@ -1 +1 @@
1
- {"version":3,"names":["React","useEffect","useRef","useState","ActivityIndicator","Linking","Platform","StyleSheet","View","Modal","ScrollView","Dimensions","TouchableOpacity","Image","TouchableWithoutFeedback","Text","NativeModules","NativeEventEmitter","WebView","getContact","Share","AsyncStorage","encryptUrlParams","OmnipayActivity","defaultValue","initiateBills","initiateWallet","OmnipayContext","createContext","OmnipayProvider","children","publicKey","env","color","analyticsConfig","webviewStatus","setWebviewStatus","isVisible","setIsVisible","webviewRef","visibilityRef","webHost","getWebHost","webviewUrl","setWebviewUrl","showWebview","includes","containerOffset","setContainerOffset","isValidEnv","isValidColor","length","onCloseRef","undefined","canUsePos","setCanUsePos","checkPaymentApp","current","eventEmitter","addListener","event","console","log","OS","isInstalled","isPackageInstalled","error","startPosTransaction","amount","purchaseType","print","rrn","stan","terminalId","result","isKeyExchanged","getItem","initiateHorizonTransaction","toLowerCase","setItem","postMessage","dataKey","dataValue","getWebviewStyle","opacity","height","width","flex","styles","webview","onWebviewMount","data","JSON","stringify","onWebviewMessage","e","nativeEvent","eventData","parse","contactDetails","openURL","closeWebview","shareReceipt","onEvent","payload","eventName","eventProperties","shouldForward","allowedEvents","warn","receiptData","fileName","image","open","url","filename","_initiateBills","phoneNumber","onClose","metadata","params","theme","view","encryptedPayload","webUrl","_initiateWallet","customerRef","userRef","usesPaylater","usesPromo","usesAirtimeData","usesTransfer","usesBills","usesPos","promoBalanceOffset","deviceId","deviceName","hideWalletTransfer","isBvnValidationRequired","walletTab","sessionId","kycStatus","launchPage","promoName","isPhoneNumberValid","isValidCustomerRef","trim","isValidUserRef","usesNativeShare","bvnRequired","isPosEnabled","reloadWebview","reload","webviewStyle","isPropsValid","isWalletView","modal","backdrop","container","paddingTop","close","require","closeIcon","contentContainer","uri","absoluteFillObject","errorContainer","errorSubtitle","button","backgroundColor","borderColor","buttonText","webviewLoader","create","hide","display","full","get","borderTopRightRadius","borderTopLeftRadius","zIndex","alignItems","justifyContent","position","top","left","maxHeight","overflow","right","borderRadius","testContent","paddingLeft","testTwoContent","textAlign","fontSize","marginBottom","paddingHorizontal","marginTop","retryButton","minWidth","marginHorizontal","paddingVertical","borderWidth"],"sourceRoot":"../../src","sources":["OmnipayProvider.tsx"],"mappings":"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"}
1
+ {"version":3,"names":["React","useEffect","useRef","useState","ActivityIndicator","Linking","Platform","StyleSheet","View","Modal","ScrollView","Dimensions","TouchableOpacity","Image","TouchableWithoutFeedback","Text","NativeModules","NativeEventEmitter","WebView","getContact","Share","AsyncStorage","encryptUrlParams","OmnipayActivity","defaultValue","initiateBills","initiateWallet","OmnipayContext","createContext","OmnipayProvider","children","publicKey","env","color","analyticsConfig","webviewStatus","setWebviewStatus","isVisible","setIsVisible","webviewRef","visibilityRef","webHost","getWebHost","webviewUrl","setWebviewUrl","showWebview","includes","containerOffset","setContainerOffset","isValidEnv","isValidColor","length","onCloseRef","undefined","canUsePos","setCanUsePos","allowedEvents","useMemo","Set","checkPaymentApp","current","eventEmitter","addListener","event","console","log","OS","isInstalled","isPackageInstalled","error","startPosTransaction","amount","purchaseType","print","rrn","stan","terminalId","result","isKeyExchanged","getItem","initiateHorizonTransaction","toLowerCase","setItem","postMessage","dataKey","dataValue","getWebviewStyle","opacity","height","width","flex","styles","webview","onWebviewMount","data","JSON","stringify","handleChooseContact","contactDetails","handleOpenLink","openURL","handleModalOpen","handleModalClosed","closeWebview","handleCloseSdk","handleShareReceipt","receiptData","fileName","image","parse","open","url","filename","handlePosTransaction","warn","handleAnalyticsEvent","onEvent","payload","eventName","eventProperties","trim","shouldForward","has","messageHandlers","chooseContact","openLink","modalOpen","modalClosed","closeSdk","shareReceipt","analyticsEvent","onWebviewMessage","e","nativeEvent","eventData","handler","_initiateBills","phoneNumber","onClose","metadata","params","theme","view","encryptedPayload","webUrl","_initiateWallet","customerRef","userRef","usesPaylater","usesPromo","usesAirtimeData","usesTransfer","usesBills","usesPos","promoBalanceOffset","deviceId","deviceName","hideWalletTransfer","isBvnValidationRequired","walletTab","sessionId","kycStatus","launchPage","promoName","isPhoneNumberValid","isValidCustomerRef","isValidUserRef","usesNativeShare","bvnRequired","isPosEnabled","reloadWebview","reload","webviewStyle","isPropsValid","isWalletView","modal","backdrop","container","paddingTop","close","require","closeIcon","contentContainer","uri","absoluteFillObject","errorContainer","errorSubtitle","button","backgroundColor","borderColor","buttonText","webviewLoader","create","hide","display","full","get","borderTopRightRadius","borderTopLeftRadius","zIndex","alignItems","justifyContent","position","top","left","maxHeight","overflow","right","borderRadius","testContent","paddingLeft","testTwoContent","textAlign","fontSize","marginBottom","paddingHorizontal","marginTop","retryButton","minWidth","marginHorizontal","paddingVertical","borderWidth"],"sourceRoot":"../../src","sources":["OmnipayProvider.tsx"],"mappings":"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"}
@@ -4,7 +4,7 @@ declare type AnalyticsConfig = {
4
4
  * Callback to send analytics events back to the parent app.
5
5
  * Receives the event name and optional payload.
6
6
  */
7
- onEvent?: (eventName: string, payload?: Record<string, any>) => void;
7
+ onEvent: (eventName: string, payload?: Record<string, unknown>) => void;
8
8
  /**
9
9
  * Optional whitelist of events to forward.
10
10
  * If omitted or empty, all events will be forwarded.
@@ -1 +1 @@
1
- {"version":3,"file":"OmnipayProvider.d.ts","sourceRoot":"","sources":["../../../src/components/OmnipayProvider.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAsC,MAAM,OAAO,CAAC;AAyB3D,aAAK,eAAe,GAAG;IACrB;;;OAGG;IACH,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,IAAI,CAAC;IACrE;;;OAGG;IACH,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;CAC1B,CAAC;AAEF,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;IACpD,eAAe,CAAC,EAAE,eAAe,CAAC;CACnC,CAAC;AAkBF,aAAK,iBAAiB,GAAG;IACvB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,CAAC;CACtD,CAAC;AAEF,aAAK,kBAAkB,GAAG;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,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;IACrB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAClC,SAAS,CAAC,EAAE,UAAU,GAAG,SAAS,GAAG,OAAO,CAAC;IAC7C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,UAAU,GAAG,YAAY,CAAC;IACtC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,CAAC;CACtD,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,WAAW,EACX,OAAO,EACP,OAAO,EACP,YAAY,EACZ,SAAS,EACT,eAAe,EACf,YAAY,EACZ,SAAS,EACT,OAAO,EACP,kBAAkB,EAClB,QAAQ,EACR,UAAU,EACV,kBAAkB,EAClB,uBAAuB,EACvB,SAAS,EACT,SAAS,EACT,UAAU,EACV,SAAS,EACT,SAAS,EACT,QAAQ,GACT,EAAE,kBAAkB,KAAK,IAAI,CAAC;CAChC,CAAC;AAOF,eAAO,MAAM,cAAc,0CAE1B,CAAC;AAEF,eAAO,MAAM,eAAe,0DAMzB,oBAAoB,gBA8ZtB,CAAC"}
1
+ {"version":3,"file":"OmnipayProvider.d.ts","sourceRoot":"","sources":["../../../src/components/OmnipayProvider.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAsC,MAAM,OAAO,CAAC;AAyB3D,aAAK,eAAe,GAAG;IACrB;;;OAGG;IACH,OAAO,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,IAAI,CAAC;IACxE;;;OAGG;IACH,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;CAC1B,CAAC;AAEF,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;IACpD,eAAe,CAAC,EAAE,eAAe,CAAC;CACnC,CAAC;AAyBF,aAAK,iBAAiB,GAAG;IACvB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,CAAC;CACtD,CAAC;AAEF,aAAK,kBAAkB,GAAG;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,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;IACrB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAClC,SAAS,CAAC,EAAE,UAAU,GAAG,SAAS,GAAG,OAAO,CAAC;IAC7C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,UAAU,GAAG,YAAY,CAAC;IACtC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,CAAC;CACtD,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,WAAW,EACX,OAAO,EACP,OAAO,EACP,YAAY,EACZ,SAAS,EACT,eAAe,EACf,YAAY,EACZ,SAAS,EACT,OAAO,EACP,kBAAkB,EAClB,QAAQ,EACR,UAAU,EACV,kBAAkB,EAClB,uBAAuB,EACvB,SAAS,EACT,SAAS,EACT,UAAU,EACV,SAAS,EACT,SAAS,EACT,QAAQ,GACT,EAAE,kBAAkB,KAAK,IAAI,CAAC;CAChC,CAAC;AAOF,eAAO,MAAM,cAAc,0CAE1B,CAAC;AAEF,eAAO,MAAM,eAAe,0DAMzB,oBAAoB,gBA8ctB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "omnipay-reactnative-sdk",
3
- "version": "1.3.4",
3
+ "version": "1.3.5",
4
4
  "description": "Omnipay react native sdk",
5
5
  "main": "lib/commonjs/index",
6
6
  "module": "lib/module/index",
@@ -28,7 +28,7 @@ type AnalyticsConfig = {
28
28
  * Callback to send analytics events back to the parent app.
29
29
  * Receives the event name and optional payload.
30
30
  */
31
- onEvent?: (eventName: string, payload?: Record<string, any>) => void;
31
+ onEvent: (eventName: string, payload?: Record<string, unknown>) => void;
32
32
  /**
33
33
  * Optional whitelist of events to forward.
34
34
  * If omitted or empty, all events will be forwarded.
@@ -58,6 +58,13 @@ type PostMessage = {
58
58
  [key: string]: unknown;
59
59
  };
60
60
 
61
+ type WebviewMessageData = {
62
+ dataKey: string;
63
+ dataValue: unknown;
64
+ };
65
+
66
+ type MessageHandler = (dataValue: unknown) => void | Promise<void>;
67
+
61
68
  type Status = 'error' | 'loading' | 'success';
62
69
 
63
70
  type InitiateBillsType = {
@@ -146,6 +153,14 @@ export const OmnipayProvider = ({
146
153
  const onCloseRef = useRef<(() => void) | undefined>(undefined);
147
154
  const [canUsePos, setCanUsePos] = useState(false);
148
155
 
156
+ const allowedEvents = React.useMemo(
157
+ () =>
158
+ analyticsConfig?.allowedEvents && analyticsConfig.allowedEvents.length > 0
159
+ ? new Set(analyticsConfig.allowedEvents)
160
+ : null,
161
+ [analyticsConfig?.allowedEvents]
162
+ );
163
+
149
164
  useEffect(() => {
150
165
  checkPaymentApp();
151
166
  }, []);
@@ -268,66 +283,38 @@ export const OmnipayProvider = ({
268
283
  } catch (error) {}
269
284
  }
270
285
 
271
- async function onWebviewMessage(e: WebViewMessageEvent) {
272
- try {
273
- if (e.nativeEvent && e.nativeEvent.data) {
274
- const eventData = JSON.parse(e.nativeEvent.data);
275
- const { dataKey, dataValue } = eventData;
276
- if (dataKey === 'chooseContact') {
277
- const contactDetails = await getContact();
278
- postMessage({
279
- dataKey: 'contactSelected',
280
- dataValue: contactDetails,
281
- });
282
- }
286
+ const handleChooseContact = async () => {
287
+ const contactDetails = await getContact();
288
+ postMessage({
289
+ dataKey: 'contactSelected',
290
+ dataValue: contactDetails,
291
+ });
292
+ };
283
293
 
284
- if (dataKey === 'openLink') {
285
- Linking.openURL(dataValue);
286
- }
287
- if (dataKey === 'modalOpen') {
288
- setContainerOffset(0);
289
- }
290
- if (dataKey === 'modalClosed') {
291
- setContainerOffset(30);
292
- if (dataValue === 'closeSdk') {
293
- closeWebview();
294
- }
295
- }
296
- if (dataKey === 'closeSdk') {
297
- closeWebview();
298
- }
299
- if (dataKey === 'shareReceipt') {
300
- shareReceipt(dataValue);
301
- }
302
- if (dataKey === 'startPosTransaction') {
303
- startPosTransaction(JSON.parse(dataValue));
304
- }
305
- if (dataKey === 'analyticsEvent' && analyticsConfig?.onEvent) {
306
- try {
307
- const payload =
308
- typeof dataValue === 'string' ? JSON.parse(dataValue) : dataValue;
309
-
310
- const { eventName, eventProperties } = payload;
311
-
312
- if (eventName) {
313
- const shouldForward =
314
- !analyticsConfig.allowedEvents ||
315
- analyticsConfig.allowedEvents.length === 0 ||
316
- analyticsConfig.allowedEvents.includes(eventName);
317
-
318
- if (shouldForward) {
319
- analyticsConfig.onEvent(eventName, eventProperties || {});
320
- }
321
- }
322
- } catch (error) {
323
- console.warn('Omnipay analytics error:', error);
324
- }
325
- }
326
- }
327
- } catch (error) {}
328
- }
294
+ const handleOpenLink = (dataValue: unknown) => {
295
+ if (typeof dataValue === 'string') {
296
+ Linking.openURL(dataValue);
297
+ }
298
+ };
299
+
300
+ const handleModalOpen = () => {
301
+ setContainerOffset(0);
302
+ };
303
+
304
+ const handleModalClosed = (dataValue: unknown) => {
305
+ setContainerOffset(30);
306
+ if (dataValue === 'closeSdk') {
307
+ closeWebview();
308
+ }
309
+ };
310
+
311
+ const handleCloseSdk = () => {
312
+ closeWebview();
313
+ };
314
+
315
+ const handleShareReceipt = async (receiptData: unknown) => {
316
+ if (typeof receiptData !== 'string') return;
329
317
 
330
- async function shareReceipt(receiptData: string) {
331
318
  try {
332
319
  const { fileName = '', image = '' } = JSON.parse(receiptData);
333
320
  await Share.open({
@@ -335,7 +322,75 @@ export const OmnipayProvider = ({
335
322
  filename: Platform.OS === 'android' ? fileName : `${fileName}.jpg`,
336
323
  });
337
324
  } catch (error) {
338
- console.log(error);
325
+ console.log('Error sharing receipt:', error);
326
+ }
327
+ };
328
+
329
+ const handlePosTransaction = (dataValue: unknown) => {
330
+ if (typeof dataValue !== 'string') return;
331
+
332
+ try {
333
+ startPosTransaction(JSON.parse(dataValue));
334
+ } catch (error) {
335
+ console.warn('Error parsing POS transaction data:', error);
336
+ }
337
+ };
338
+
339
+ const handleAnalyticsEvent = (dataValue: unknown) => {
340
+ if (!analyticsConfig?.onEvent) {
341
+ return;
342
+ }
343
+
344
+ try {
345
+ const payload =
346
+ typeof dataValue === 'string' ? JSON.parse(dataValue) : dataValue;
347
+
348
+ const { eventName, eventProperties } = payload;
349
+
350
+ if (typeof eventName === 'string' && eventName.trim()) {
351
+ const shouldForward = !allowedEvents || allowedEvents.has(eventName);
352
+
353
+ if (shouldForward) {
354
+ analyticsConfig.onEvent(eventName, eventProperties || {});
355
+ }
356
+ } else {
357
+ console.warn('Omnipay analytics: Invalid event name', eventName);
358
+ }
359
+ } catch (error) {
360
+ console.warn('Omnipay analytics error:', error);
361
+ }
362
+ };
363
+
364
+ /**
365
+ * Maps message keys to handlers for O(1) lookup and easy extensibility.
366
+ * Add new message types here instead of chaining if statements.
367
+ */
368
+ const messageHandlers: Record<string, MessageHandler> = {
369
+ chooseContact: handleChooseContact,
370
+ openLink: handleOpenLink,
371
+ modalOpen: handleModalOpen,
372
+ modalClosed: handleModalClosed,
373
+ closeSdk: handleCloseSdk,
374
+ shareReceipt: handleShareReceipt,
375
+ startPosTransaction: handlePosTransaction,
376
+ analyticsEvent: handleAnalyticsEvent,
377
+ };
378
+
379
+ async function onWebviewMessage(e: WebViewMessageEvent) {
380
+ try {
381
+ if (!e.nativeEvent?.data) {
382
+ return;
383
+ }
384
+
385
+ const eventData: WebviewMessageData = JSON.parse(e.nativeEvent.data);
386
+ const { dataKey, dataValue } = eventData;
387
+
388
+ const handler = messageHandlers[dataKey];
389
+ if (handler) {
390
+ await handler(dataValue);
391
+ }
392
+ } catch (error) {
393
+ console.warn('Error handling webview message:', error);
339
394
  }
340
395
  }
341
396
 
@@ -345,7 +400,7 @@ export const OmnipayProvider = ({
345
400
  metadata = {},
346
401
  }: InitiateBillsType) => {
347
402
  if (typeof phoneNumber === 'string' && phoneNumber.length >= 10) {
348
- // Encrypt sensitive parameters
403
+ // Encrypt params to prevent exposure of sensitive data in URL/logs
349
404
  const params = {
350
405
  theme: color,
351
406
  view: 'bills',
@@ -386,7 +441,7 @@ export const OmnipayProvider = ({
386
441
  promoName = '',
387
442
  metadata = {},
388
443
  }: InitiateWalletType) => {
389
- //prevent opening if it's already open
444
+ // Guard against race conditions when wallet is already initializing/visible
390
445
  if (visibilityRef.current) {
391
446
  return;
392
447
  }
@@ -396,7 +451,7 @@ export const OmnipayProvider = ({
396
451
  const usesNativeShare = true;
397
452
 
398
453
  if (isPhoneNumberValid || isValidCustomerRef || isValidUserRef) {
399
- // Encrypt sensitive parameters
454
+ // Encrypt params to prevent exposure of PII and API keys in URL/logs
400
455
  const params = {
401
456
  theme: color,
402
457
  view: 'wallet',
@@ -468,7 +523,7 @@ export const OmnipayProvider = ({
468
523
  <View
469
524
  style={[
470
525
  styles.container,
471
- /* eslint-disable react-native/no-inline-styles */
526
+ // Dynamic padding based on modal state - inline style needed for animation
472
527
  { paddingTop: isWalletView ? 0 : containerOffset },
473
528
  ]}
474
529
  >