GithubHelp home page GithubHelp logo

pinkdiamond1 / prediqt-js Goto Github PK

View Code? Open in Web Editor NEW

This project forked from everipedianetwork/prediqt-js

0.0 1.0 0.0 1.38 MB

Prediqt JavaScript/TypeScript Client Library

Home Page: https://prediqt.everipedia.org

License: MIT License

TypeScript 99.67% JavaScript 0.10% Shell 0.23%

prediqt-js's Introduction

PredIQt JavaScript/TypeScript Client Library

CircleCI npm version MIT licensed

General purpose library for the PredIQt

Installation

Using yarn:

yarn add @everipedia/prediqt-js

or using npm:

npm install --save @everipedia/prediqt-js

Quick Start

API initialization

Frontend usage

import { Prediqt } from "@everipedia/prediqt-js"

const nodeEndpoint = "https://api.kylin.alohaeos.com"; // you can use any other node endpoint

const client = new Prediqt(
    { createApi: { signatureProvider, nodeEndpoint }}, // create signatureProvider with eosjs or based on it libs
    auth,                                              // (optional) Array with authorization objects, you can set it later with setAuth method
    contracts                                          // (optional) Object that takes prediqt, prediqtMarket, iqToken, prediqtBank contracts' names
);

// or you can pass created api

import { Api, JsonRpc } from "eosjs";

const rpc = new JsonRpc(nodeEndpoint);
const api = new Api({ rpc, signatureProvider });       // create rpc and signatureProvider with eosjs or based on it libs

const client = new Prediqt(
    { customApi: api },
    ...                                                // the same parameters
);

Server usage

... 

// or you can pass created api

const { Prediqt } = require("@everipedia/prediqt-js");
const { Api, JsonRpc } = require("eosjs");
const fetch = require("isomorphic-fetch");

const rpc = new JsonRpc(nodeEndpoint, { fetch });
const api = new Api({ rpc, signatureProvider });       // create rpc and signatureProvider with eosjs or based on it libs

const client = new Prediqt(
    { customApi: api },
    ...                                                // the same parameters
);

Graph API initialization

import { PrediqtGraph } from "@everipedia/prediqt-js";

const apiEndponit = "https://prediqt-api-kylin.azurewebsites.net/graphql"; // endpoint for mainnet - https://prediqt-api-mainnet.azurewebsites.net/graphql 

const graphClient = new PrediqtGraph(apiEndponit);

API

setAuth

Set authorization to execute transactions

Parameters

resetAuth

Reset authorization to execute transactions

setFee

Set a fee for the platform (admin only)

Parameters

claimShares

Claim shares for a particular market

Parameters

cancelOrder

Cancel an order

Parameters

createMarket

Create a Market

Parameters

deleteMarket

Delete an existing Market

Parameters

limitOrder

Open an order for shares in a market

Parameters

getLimitOrderActions

Gets an action for an order for shares in a market

Parameters

marketResolve

Set the outcome of a market (only resolver)

Parameters

marketResolveOracle

Set the outcome of a market (only resolver)

Parameters

marketResolveIQ

IQ resolution method

Parameters

getTotalIqVotes

Get total IQ votes from IQ resolution method

proposeMarket

Propose a market to be part of the active markets

Parameters

rejectMarket

Reject a proposed market (resolver only)

Parameters

setResolver

Change resolver for a market (admin only)

Parameters

withdraw

Withdraw from user balance

Parameters

syncBank

Sync Bank

transferShares

Transfer shares to user

Parameters

cancelShares

Cancel transferred shares

Parameters

buyShares

Buy shares

Parameters

sellShares

Sell shares

Parameters

proposeMultiSig

Propose MultiSignature

Parameters

getAllowedAssets

Get allowed assets

getFees

Get fees related to the contract

Parameters

  • limit number (optional, default 100)
  • offset number (optional, default 0)

getShares

Get shares related to a market

Parameters

  • marketId number
  • limit number (optional, default 100)
  • offset number (optional, default 0)

getReferrals

Get referral shares related to a market

Parameters

  • marketId number
  • limit number (optional, default 100)
  • offset number (optional, default 0)

getMarkets

Get markets

Parameters

  • tableKey string (optional, default "")
  • limit number (optional, default 100)
  • offset number (optional, default 0)

getMarket

Get a single market

Parameters

getOrders

Get orders for a market

Parameters

  • data Object
    • data.nameId string takes "yes" or "no"
    • data.marketId number
    • data.tableKey string (optional, default "")
    • data.limit number (optional, default 100)
    • data.offset number (optional, default 0)

getBalance

Get balance of an user

Parameters

getIqBalance

Get IQ balance of an user

Parameters

getUserResources

Get resources of an user

Parameters

searchInOracles

Search user in table of oracles

Parameters

getAccount

Get account data of an user

Parameters

getContractForToken

Returns the appropriate smart contract for token

Parameters

Graph API

getProposedMarkets

Get proposed markets

Parameters

getMarkets

Get markets

Parameters

getMarket

Get market

Parameters

getMarketMetadata

Get market metadata only

Parameters

getMarketPage

Get market page

Parameters

getPlatformFees

Get platform fees

getCategoriesAndTags

Get categories and tags

getDappInfo

Get information about dapp

getUserProfile

Get user's profile

Parameters

getShareHolders

Get shareholders

Parameters

getChainInfo

Get info about node's backlog

getStatsByPeriod

Returns the platform stats by period (Weekly), limit: 20

Parameters

  • group_by

getLeaderboardByPeriod

Returns the leaderboard data group by period

Parameters

getUserSettings

Returns the user settings used for notifications

Parameters

prediqt-js's People

Contributors

dependabot[bot] avatar kesar avatar nikita-pobazhak avatar zer0blockchain 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.