cashlink-sdk
v1.1.0
Published
Cashlink web sdk
Downloads
10
Maintainers
Readme
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.0
Table 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 PROJECT
To install and set up the library, run:
$ npm install -S cashlink-sdk
Or if you prefer using Yarn:
$ yarn add cashlink-sdk
Usage
Serving the app
$ npm build:staging
Running the tests
$ npm test
Building a distribution version
$ npm run build
This 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