JSPM

@evrynetlabs/warp-js

2.0.2
  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 6
  • Score
    100M100P100Q26622F
  • License OSL-3.0

warp protocol javascript sdk for client side

Package Exports

  • @evrynetlabs/warp-js

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (@evrynetlabs/warp-js) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

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.