@zerohash-sdk/crypto-sell-react
v1.3.3
Published
A React SDK that enables frontend React applications to seamlessly integrate with the Connect Crypto Sell product.
Readme
@zerohash-sdk/crypto-sell-react
A React SDK that enables frontend React applications to seamlessly integrate with the Connect Crypto Sell product.
Connect Crypto Sell provides a secure, customizable flow for selling crypto assets directly within your application.
Requirements
- React 18.0.0 or higher
- React DOM 18.0.0 or higher
Installation
npm install @zerohash-sdk/crypto-sell-reactGetting Started
Follow these simple steps to integrate Connect Crypto Sell into your React application:
1. Import the CryptoSell Component
import { CryptoSell } from '@zerohash-sdk/crypto-sell-react';2. Add the CryptoSell Component to Your App
function App() {
const jwt = 'your-jwt-token'; // Obtain this from your backend
return (
<CryptoSell
jwt={jwt}
env="prod" // or "cert" for testing
theme="auto" // 'auto' (default), 'light', or 'dark'
/>
);
}3. Configure Event Callbacks (Optional)
Listen to events from the Crypto Sell SDK to handle user interactions:
function App() {
const jwt = 'your-jwt-token';
const handleCompleted = ({ amountSold, assetSymbol }) => {
console.log('Sell completed:', amountSold, assetSymbol);
};
const handleError = ({ errorCode, reason }) => {
console.log('Crypto sell error:', errorCode, 'Reason:', reason);
};
const handleClose = () => {
console.log('Crypto sell widget closed');
};
const handleEvent = ({ type, data }) => {
console.log('Crypto sell event:', type, 'Data:', data);
};
const handleLoaded = () => {
console.log('Crypto sell widget loaded and ready');
};
return (
<CryptoSell
jwt={jwt}
env="prod"
theme="auto"
onCompleted={handleCompleted}
onError={handleError}
onClose={handleClose}
onEvent={handleEvent}
onLoaded={handleLoaded}
/>
);
}Complete Example
Here's a full example of integrating Connect Crypto Sell into your React application:
import React from 'react';
import { CryptoSell } from '@zerohash-sdk/crypto-sell-react';
function App() {
// JWT token should be obtained from your backend
const jwt = 'your-jwt-token';
return (
<div className="App">
<h1>My Crypto App</h1>
<CryptoSell
jwt={jwt}
env="prod" // 'prod' (default), 'cert', 'dev', or 'local'
theme="auto" // 'auto' (default), 'light', or 'dark'
onCompleted={({ amountSold, assetSymbol }) => {
console.log('Sold:', amountSold, assetSymbol);
}}
onError={({ errorCode, reason }) => {
console.log('Error:', errorCode, 'Reason:', reason);
}}
onClose={() => {
console.log('Crypto sell widget closed');
}}
onEvent={({ type, data }) => {
console.log('Event type:', type, 'Event data:', data);
}}
onLoaded={() => {
console.log('Crypto sell widget loaded and ready');
}}
/>
</div>
);
}
export default App;API Reference
CryptoSell Component Props
| Prop | Type | Required | Default | Description |
| ------------- | --------------------------------------- | -------- | -------- | -------------------------------------------------- |
| jwt | string | Yes | - | JWT token for authentication with Connect |
| env | "prod" \| "cert" \| "dev" \| "local" | No | "prod" | Target environment |
| theme | "auto" \| "light" \| "dark" | No | "auto" | Theme mode for the interface |
| onCompleted | ({ amountSold, assetSymbol }) => void | No | - | Callback when the sell flow completes successfully |
| onError | ({ errorCode, reason }) => void | No | - | Callback for error events |
| onClose | () => void | No | - | Callback when the widget is closed |
| onEvent | ({ type, data }) => void | No | - | Callback for general events |
| onLoaded | () => void | No | - | Callback when the widget is loaded and ready |
More Information & Support
For comprehensive documentation or support about Connect, visit our Documentation Page.
