ALPAC-4 / nft-market.js

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

nft-market.js

js sdk for https://github.com/ALPAC-4/nft-market-contract

Usage

  1. build wine.js
$npm install
$npm run build
  1. install it on your another project
$npm install ../nft-market.js

../nft-market.js is just example, put the right path

some samples

import { LCDClient, MnemonicKey, MsgExecuteContract, MsgInstantiateContract, MsgStoreCode, Wallet } from "@terra-money/terra.js"
import { NftMarket } from "nft-market.js"

const mnemonic = 'seed seed ..'
const contractAddress = 'terra1...'
const nft_address = 'terra1..'
const codeID = 123123

async function sample() {
  const key = new MnemonicKey({mnemonic})
  const lcd = new LCDClient({
    URL: 'https://bombay-lcd.terra.dev',
    chainID: 'bombay-12',
    gasPrices: '0.15uusd',
    gasAdjustment: '1.4'
  })

  const wallet = new Wallet(lcd, key)

  const market = new NftMarket({contractAddress, codeID, lcd, key})


  // sample msg gens
  const instantiateMsg = market.init(key.accAddress, '0.05', 100000, 604800)

  const updateConfig = market.updateConfig({ min_increase: '0.01' })

  const support_assets = [
    { native_token: { denom: 'uusd' } }
  ]
  const royalties = [
    { address: key.accAddress, royalty_rate: '0.05' }
  ]
  const addCollection = market.addCollection(nft_address, support_assets, royalties)

  const support_assets = [
    { native_token: { denom: 'uluna' } },
    { native_token: { denom: 'uusd' } }
  ]
  const royalties = [
    { address: key.accAddress, royalty_rate: '0.1' }
  ]
  const updateCollection = market.updateCollection(nft_address, support_assets, royalties)

  const makeFixedPriceOrder = market.makeFixedPriceOrder(
    nft_address,
    'test_token',
    { info: { native_token: { denom: 'uusd' } },amount: '10000000' }
  )

  const executeOrder = await market.executeOrder(2)

  const makeFixedPriceOrder = market.makeFixedPriceOrder(
    nft_address,
    'test_token',
    { info: { native_token: { denom: 'uusd' } },
    amount: '10000000' }
  )

  const cancelOrder = market.cancelOrder(2)

  const makeAuctionOrder = market.makeAuctionOrder(
    nft_address,
    'test_token',
    { info: { native_token: { denom: 'uusd' } },amount: '10000000' },
    {at_height: 6802062},
    { info: { native_token: { denom: 'uusd' } }, amount: '100000000' }
  )

  const bid = market.bid(1, { info: { native_token: { denom: 'uusd' } }, amount: '11025000' })

  const executeAuction = market.executeAuction(1)



  // execute sample
  wallet.createAndSignTx({ msgs: [executeOrder]})
  .then(tx => lcd.tx.broadcast(tx))
  .then(res => console.log(res.txhash))


  // query sample
  market.ordersQuery({})
  .then(res => console.log(res[0]))

}

About


Languages

Language:TypeScript 100.0%