cashlink-sdk v1.1.0
Cashlink-sdk
Write a project description
Prerequisites
This project requires NodeJS (version 8 or later) and NPM. Node and NPM are really easy to install. To make sure you have them available on your machine, try running the following command.
$ npm -v && node -v
6.4.1
v8.16.0Table of contents
Getting Started
These instructions will get you a copy of the project up and running on your local machine for development and testing purposes. See deployment for notes on how to deploy the project on a live system.
Installation
BEFORE YOU INSTALL: please read the prerequisites
Start with cloning this repo on your local machine:
$ git clone https://github.com/ORG/PROJECT.git
$ cd PROJECTTo install and set up the library, run:
$ npm install -S cashlink-sdkOr if you prefer using Yarn:
$ yarn add cashlink-sdkUsage
Serving the app
$ npm build:stagingRunning the tests
$ npm testBuilding a distribution version
$ npm run buildThis task will create a distribution version of the project
inside your local lib/ folder
API
init
init(isDev: boolean)init method should be called before calling other methods, the method should be called only ones.
Options
isDev
| Type | Default value |
|---|---|
| boolean | false |
If present, dev environment is used
Example:
import CashlinkSdk from 'cashlink-sdk';
const MyComponent: React.FC = () => {
useEffect(() => {
CashlinkSdk.init();
}, []);
return (
<div className="App">
<h2>Chuck Norris Joke of the day</h2>
</div>
);
};transact
transact(props: InitTransaction)Open the cashlink payment view
const ChuckNorrisJokes: React.FC = () => {
const onOpenP2p = () => {
// TOKEN is gotten from cashlink
CashlinkSdk.transact({amount: 0, orderType: 'DEPOSIT', token: 'TOKEN'}, true)
};
return (
<div className="Comments">
<p>Pay money</p>
<button disabled={loading} onClick={onOpenP2p}>
Next Joke
</button>
</div>
);
};Options
props
| Type | Default value |
|---|---|
| InitTransaction | {amount: 0} |
interface InitTransaction {
amount?: number;
orderType: OrderType;
token: string;
}
type OrderType = 'WITHDRAWAL' | 'DEPOSIT';The property passed to cashlink modal
transactExternal
transactExternal(props: ExternInitTransaction)Open the cashlink payment view for 3rd party integration
const ChuckNorrisJokes: React.FC = () => {
const onOpenP2p = () => {
// TOKEN is gotten from cashlink
CashlinkSdk.transactExternal({requestId: '', requestId: '', token: ''}, true)
};
return (
<div className="Comments">
<p>Pay money</p>
<button disabled={loading} onClick={onOpenP2p}>
Next Joke
</button>
</div>
);
};Options
props
| Type | Default value |
|---|---|
| ExternInitTransaction |
export interface ExternInitTransaction {
token: string;
orderId: string;
chatToken: string;
}The property passed to cashlink modal
profile
profile(props: IProfile)Open the cashlink profile
const ChuckNorrisJokes: React.FC = () => {
const onOpenP2p = () => {
// TOKEN is gotten from cashlink
CashlinkSdk.profile({token: ''})
};
return (
<div className="Comments">
<p>Pay money</p>
<button disabled={loading} onClick={onOpenP2p}>
Next Joke
</button>
</div>
);
};Options
props
| Type | Default value |
|---|---|
| IProfile |
interface IProfile {
token: string;
}The property passed to cashlink modal
Contributing
Please read CONTRIBUTING.md for details on our code of conduct, and the process for submitting pull requests to us.
- Fork it!
- Create your feature branch:
git checkout -b my-new-feature - Add your changes:
git add . - Commit your changes:
git commit -am 'Add some feature' - Push to the branch:
git push origin my-new-feature - Submit a pull request :sunglasses:
Credits
TODO: Write credits
Built With
- Love
Versioning
We use SemVer for versioning. For the versions available, see the tags on this repository.
Authors
- Kolade Femi - All work on lowkey - devfemi
See also the list of contributors who participated in this project.
License
ISC License © Andrea SonnY