Skip to content

Commit 9833998

Browse files
committed
Fix declaration file location
* Add capability to pass ref
1 parent 417708b commit 9833998

7 files changed

+2035
-1972
lines changed

declarations.d.ts

-5
This file was deleted.

package.json

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@transak/react-native-sdk",
3-
"version": "2.0.3",
3+
"version": "2.0.4",
44
"description": "A React Native SDK for decentralised applications to onboard their global user base with fiat currency",
55
"type": "module",
66
"types": "lib/index.d.ts",
@@ -20,7 +20,7 @@
2020
"engines": {
2121
"node": ">=18.0.0"
2222
},
23-
"packageManager": "[email protected]+sha256.e1f9e8d1a16607a46dd3c158b5f7a7dc7945501d1c6222d454d63d033d1d918f",
23+
"packageManager": "[email protected]+sha512.140036830124618d624a2187b50d04289d5a087f326c9edfc0ccd733d76c4f52c3a313d4fc148794a2a9d81553016004e6742e8cf850670268a7387fc220c903",
2424
"files": [
2525
"lib/**/*"
2626
],

pnpm-lock.yaml

+2,017-1,956
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/Constants/web-app-urls.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import { Environments } from './environments';
22

33
export const WebAppUrls = {
4-
DEVELOPMENT: 'https://localhost:5005',
4+
DEVELOPMENT: 'https://<enter-system-ip>:5005/',
55
DEV: 'https://global-dev.transak.com',
66
BETA: 'https://global-beta.transak.com',
77
[Environments.STAGING]: 'https://global-stg.transak.com',

src/TransakWebView.tsx

+9-7
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,13 @@
1-
import { useEffect } from 'react';
1+
import { useEffect, forwardRef } from 'react';
22
import { Alert, Linking } from 'react-native';
33
import { WebView, WebViewMessageEvent } from 'react-native-webview';
44
import { InAppBrowser } from 'react-native-inappbrowser-reborn';
5-
import { generateURL } from 'Utils/generate-url';
5+
import { generateGlobalTransakUrl } from 'Utils/generate-global-transak-url';
66
import { eventListener } from 'Utils/event-listener';
77
import { TransakWebViewInputs } from 'Types/sdk-config.types';
88

9-
function TransakWebView({ transakConfig, onTransakEvent, ...webviewProps }: TransakWebViewInputs) {
10-
const transakUrl = generateURL(transakConfig);
9+
const TransakWebView = forwardRef<WebView, TransakWebViewInputs>(({ transakConfig, onTransakEvent, ...webviewProps }, ref) => {
10+
const transakUrl = generateGlobalTransakUrl(transakConfig);
1111
const currentWebviewProps = { ...webviewProps };
1212

1313
delete currentWebviewProps.sharedCookiesEnabled;
@@ -49,15 +49,16 @@ function TransakWebView({ transakConfig, onTransakEvent, ...webviewProps }: Tran
4949
}
5050
};
5151

52-
const onMessageHandler = async (event: WebViewMessageEvent) => {
52+
const onMessageHandler = (event: WebViewMessageEvent) => {
5353
if (webviewProps.onMessage) {
5454
webviewProps.onMessage(event);
5555
}
5656

5757
const url = event.nativeEvent.data;
5858

5959
if (url.includes('/googlepay')) {
60-
await openTransak(url.replace('isWebView', 'useAsExternalPayment'));
60+
// eslint-disable-next-line @typescript-eslint/no-floating-promises
61+
openTransak(url.replace('isWebView', 'useAsExternalPayment'));
6162
}
6263
};
6364

@@ -71,6 +72,7 @@ function TransakWebView({ transakConfig, onTransakEvent, ...webviewProps }: Tran
7172

7273
return (
7374
<WebView
75+
ref={ref}
7476
{...currentWebviewProps}
7577
originWhitelist={['*']}
7678
source={{ uri: transakUrl }}
@@ -79,6 +81,6 @@ function TransakWebView({ transakConfig, onTransakEvent, ...webviewProps }: Tran
7981
onMessage={onMessageHandler}
8082
/>
8183
);
82-
}
84+
});
8385

8486
export { TransakWebView };

src/Utils/generate-url.ts renamed to src/Utils/generate-global-transak-url.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ import { TransakConfig } from 'Types/sdk-config.types';
55
import { Environments } from 'Constants/environments';
66
import packageJson from 'package.json';
77

8-
export function generateURL(configData: TransakConfig) {
8+
export function generateGlobalTransakUrl(configData: TransakConfig) {
99
const { name: sdkName, version: sdkVersion } = packageJson;
1010
const { environment = Environments.STAGING } = configData;
1111
const queryParams = { sdkName, sdkVersion };

src/declarations.d.ts

+5
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
declare module '*.json' {
2+
const value: never;
3+
// eslint-disable-next-line import/no-default-export
4+
export default value;
5+
}

0 commit comments

Comments
 (0)