sero-pp

1.0.8 • Public • Published

sero-pp

SERO js-sdk for popup and pullup DApp market .

## Whate is sero-pp?

sero-pp provided to developers who need to develop DApps in the popup and pullup DApp market. It provides interface for querying accounts and executing smart contract methods.

## How to use sero-pp

### Installation

 npm install sero-pp

### Usage

import seropp from 'sero-pp'

## APIs

  • seropp.init
  • seropp.getAccountList
  • seropp.getAccountDetail
  • seropp.call
  • seropp.executeContract
  • seropp.estimateGas
  • seropp.getInfo

seropp.init

It must be inited before invoke other interface.

const dapp = {
          name: "Hello DApp",
          contractAddress: contractAddress,
          github: "https://github.com/sero-cash/sero-pp/example",
          author: "tom",
          url: "http://127.0.0.1:3000",
          logo: "http://127.0.0.1:3000/logo192.png",
      }
 
      seropp.init(dapp,function (rest) {
          console.log("init result >>> " , rest);
      })

Account structure

  • Name wallet name
  • PK is the address of the account, can be used as a tag for the account, not as a transfer from address.
  • MainPKr can be used as a common address, call and execute smart contract.
  • Balance is a map. key = currency ,value = Minimum unit amount.

Transaction structure

  • from Use PK
  • to Use Contract Address
  • data It is the data that return from serojs packMethod
  • value It is amount of transfer to the contract. It need contract support payable method.
  • cy It is short word of currency ,default SERO
  • gas It is pay to miner
  • gasPrice Price of gas
  • catg Catagory of ticket
  • value Value of ticket

#### Usage

  • seropp.getAccountList

Return all wallet account

seropp.getAccountList(function(accounts){
    console.log(accounts);
});

Result:

[{
        "Name":"Tom",
        "PK": "kvaztfuz3ZS6sNcksQYZpdGC1rUwcuv1aPkuzkLdgeNSvq5FQiURuBsqghLCY3MkxZLNm7WQ9yV2ib2UWoRpJys",
        "MainPKr": "fHBQfR5t9j3D4CsKQG78sQ3Qzdz9SS6m3XsgvgkNcpKjD1TMBEVmcJ4vhDUpkZrvPtE47DnzxRjz4Gk7xMaGZfxstnMeBjZF1dWeQaC3dxLrPPa4wQoGdXeJuihdTKwxf5K",
    "Balance": {
        "SERO": 88999438296000000000
    }
}]
  • seropp.getAccountDetail

Return the PK wallet account

  seropp.getAccountDetail(PK,function(account){
      console.log(account);
  });

Result:

  {
          "Name":"Tom",
          "PK": "kvaztfuz3ZS6sNcksQYZpdGC1rUwcuv1aPkuzkLdgeNSvq5FQiURuBsqghLCY3MkxZLNm7WQ9yV2ib2UWoRpJys",
          "MainPKr": "fHBQfR5t9j3D4CsKQG78sQ3Qzdz9SS6m3XsgvgkNcpKjD1TMBEVmcJ4vhDUpkZrvPtE47DnzxRjz4Gk7xMaGZfxstnMeBjZF1dWeQaC3dxLrPPa4wQoGdXeJuihdTKwxf5K",
  	"Balance": {
  		"SERO": 88999438296000000000
  	}
  }
  • seropp.executeContract

Send a transaction to update smart contract state. It is asynchronous on the block chain. and return transaction hash.

seropp.executeContract(tx,function(txHash){
    console.log(txHash);
});
  • seropp.call

It use to get data from gero node . and it will be convert to basic data structure.

seropp.call(data,function(rest){
    console.log(rest);
});
  • seropp.estimateGas

It use to estimate gas begin send transaction .

seropp.estimateGas(data,function(gas){
    console.log(gas);
});

Embed Popup wallet using iframe in DApp

let walletUrl = 'http://popup-github.sero.cash/?language=en_US';
<iframe className="popupiframe" src={walletUrl}  frameBorder="no" />

Package Sidebar

Install

npm i sero-pp

Homepage

.

Weekly Downloads

3

Version

1.0.8

License

LGPL-3.0

Unpacked Size

109 kB

Total Files

25

Last publish

Collaborators

  • jx_wei19