BlueWallet/components/HandOffComponent.ios.tsx
Marcos Rodriguez Velez 40936fe49c
REF: Handoff component
Dont bother on running in android. extract listener from app.js
2024-04-02 21:50:19 -04:00

42 lines
1.2 KiB
TypeScript

import React, { useContext } from 'react';
// @ts-ignore: react-native-handoff is not in the type definition
import Handoff from 'react-native-handoff';
import { BlueStorageContext } from '../blue_modules/storage-context';
interface HandOffComponentProps {
url?: string;
title?: string;
type: (typeof HandOffComponent.activityTypes)[keyof typeof HandOffComponent.activityTypes];
userInfo?: object;
}
interface HandOffComponentWithActivityTypes extends React.FC<HandOffComponentProps> {
activityTypes: {
ReceiveOnchain: string;
Xpub: string;
ViewInBlockExplorer: string;
};
}
const HandOffComponent: HandOffComponentWithActivityTypes = props => {
const { isHandOffUseEnabled } = useContext(BlueStorageContext);
if (process.env.NODE_ENV === 'development') {
console.log('HandOffComponent: props', props);
}
if (isHandOffUseEnabled) {
return <Handoff {...props} />;
}
return null;
};
const activityTypes = {
ReceiveOnchain: 'io.bluewallet.bluewallet.receiveonchain',
Xpub: 'io.bluewallet.bluewallet.xpub',
ViewInBlockExplorer: 'io.bluewallet.bluewallet.blockexplorer',
};
HandOffComponent.activityTypes = activityTypes;
export default HandOffComponent;