Giter VIP home page Giter VIP logo

warp-js's Introduction

warp-js

Warp JS SDK to implement a client for Warp protocol

Contents

Installation

$ npm install @evrynetlabs/warp-js

Developing

Build With

Prerequisites

  • Knowledge of Warp Contract here
  • Knowledge of EER-2 (Evrynet Enhancement Request) here
    • User needs to setApprovalForAll(address _operator, bool _approved) and let a custodian contract as an operator.
    • For custom credit contract, user needs to SetMinter(uint256 indexed _typeID, address _minter); and let let a custodian contract as a minter.

Building

For local development

$ yarn run build:local

or

$ yarn run build:development

For production use

$ yarn run build:production

Versioning

We use a SemVer for versioning. Please see the release.

Tests

For unit testing

$ yarn run test

For unit testing with coverage

$ yarn run test-coverage

Jest as well as Enzyme has been used for testing libraries.

Style guide

Eslint has been used for linting as well as prettier

  • For Lint check, run:
$ yarn run lint
  • For prettier format, run:
$ yarn run format

Api Reference

Please see this link

Function examples

You can find example at warp-js example

Get available assets

  • Request
evry.getWhitelistAssets()
  • Response
assets: [ 
	{ 
		code: "XLM", 
		issuer: "", 
		decimal: 7, 
		typeID: "1"
	}
]

Get user's Evrynet account balance

  • Request
evry.getBalance({ 
	address: "0x1234", 
	asset: { 
		code: "EVRY", 
		issuer: "issuer", 
		decimal: 18, 
		typeID: "2" 
		} 
})
  • Response
balance: 10

Get user's Evrynet account nonce

  • Request
evry.getNonce({ address: "0x1234" })
  • Response
nonce: "1234"

Get user's Stellar account balance

  • Request
stellar.getBalance({ 
	address: "stellar public key", 
	asset: { 
		code: "vTHB", 
		issuer: "issuer", 
		decimal: 2, 
		typeID: "3" 
	} 
})
  • Response
balance: "10"

Get user's Stellar account trustlines

  • Request
stellar.getTrustlines({ address: "stellar public key" })
  • Response
assets:[ 
	{ 
		code: "EVRY", 
		issuer: "issuer" 
	} 
]

Get user's Stellar account sequence number

  • Request
stellar.getSequenceNumber({ address: "stellar public key" })
  • Response
sequenceNumber: "1234"

Generate stellar lock transaction

  • Request
stellar.newLockTx({ 
	secret: "stellar private key", 
	amount: "1234", 
	asset: { 
		code: "XLM", 
		issuer: ""
	} 
})
  • Response
xdr: ""

Generate stellar unlock transaction

  • Request
stellar.newUnlockTx({ 
	secret: "stellar private key", 
	amount: "1234", 
	asset: { 
		code: "XLM", 
		issuer: ""
	} 
})
  • Response
xdr: ""

Generate evrynet lock transaction

  • Request
evry.newLockTx({ 
	secret: "evrynet private key", 
	amount: "1234", 
	asset: { 
		code: "XLM", 
		issuer: "", 
		decimal: 7, 
		typeID: "1" 
	} 
})
  • Response
rawTx: "0xabcd"

Generate evrynet unlock transaction

  • Request
evry.newUnlockTx({ 
	secret: "evrynet private key", 
	amount: "1234", 
	asset: { 
		code: "XLM", 
		issuer: "", 
		decimal: 7, 
		typeID: "1" 
	} 
})
  • Response
rawTx: "0xabcd"

Transfer asset from stellar to evrynet

  • Request
warp.toEvrynet({ rawTx: "0xabcd", xdr: "", })
  • Response
{ stellarTxHash: "0x1234", evrynetTxHash: "0x1234" }

Transfer asset from evrynet to stellar

  • Request
warp.toStellar({ rawTx: "0xabcd", xdr: "", })
  • Response
{ stellarTxHash: "0x1234", evrynetTxHash: "0x1234" }

Licensing

Warp JS is licensed under the OSL Open Software License v3.0, also included in our repository in the LICENSE file.

warp-js's People

Contributors

devops-team-lightnet avatar donus3 avatar fdango avatar jui100x avatar noraluk avatar noraluk-ch avatar timprachasri avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.