npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

nft-barter-sdk

v1.0.32

Published

Javascript SDK for abstracting complexities of interacting with NFT protocols.

Downloads

70

Readme

Barter

SDK for interacting with the Barter Smart Contracts.

Authors

  • Ebube
  • [KC] (https://www.github.com/PreciousKosisochukwuJenz)

Badges

MIT License GPLv3 License AGPL License

Features

  • Create Sale
  • Create Offer
  • Sign Transfer Transactions
  • Execute Exchange

Installation

Install nft-barter-sdk with npm

  npm install nft-barter-sdk
  cd my-project

Usage/Examples

Init

After installing the SDK, import the Barter class into your current script.

import Barter from 'nft-barter-sdk'

// Initialize web3 using ethers.js
await window.ethereum.enable();
const provider = new ethers.providers.Web3Provider(window.ethereum, "any");

// Prompt the user to select an account
await provider.send("eth_requestAccounts", []);

// Initialize Barter
const barter = new Barter(provider);

Sales

Creating a Sale

You can offer up a token or collection of tokes for sale (exchange) by using the sale() method.

const sale = barter.sale();

// Add a token to offer up for exchange
await sale.addToken({"quantity":"200", "tAddress": "0xFD244E7f5A39845087D21825f87BEEf9eC79208a", "tId":1, "tStandard":1});

// Make the sale visible to other users
await sale.publish();

Adding Multiple Tokens

You can add multiple tokens by repeatedly calling the addToken function:

const sale =  barter.sale();
await sale.addToken({"quantity":"100", "tAddress": "0xFD244E7f5A39845087D21825f87BEEf9eC79208a", "tId":1, "tStandard":"ERC20"});
await sale.addToken({"quantity":"1", "tAddress": "0x6E8095814Dbfb8765f603F82eaa4d8aB63234D2C", "tId":1, "tStandard":"ERC721"});
await sale.addToken({"quantity":"2", "tAddress": "0x6E8095814Dbfb8765f603F82eaa4d8aB63234D2C", "tId":1, "tStandard":"ERC1155"});

Loading an Existing Sale

To load an existing sale, call:

const sale =  barter.sale(saleId);

Where no sale ID is passed in, barter creates a new instance of the Sale class.

Approving an offer

When a preferred offer has been identified by the seller, he can approve the offer by calling:

sale.approveOffer(offerId, true);

The first parameter is the Id of the offer to approve while the second parameter is an optional value indicating whether or not the transaction should be executed on the blockcahain. If set to true, the user will be prompted to execute the transation after signing, whereas, setting this value to false only returns the signature after the user has signed the transaction.