13.1.4 • Published 1 year ago

smartql v13.1.4

Weekly downloads
-
License
MIT
Repository
github
Last release
1 year ago

smartql logo

SmartQL

NPM Package License: MIT

SmartQL is a GraphQL tool designed for Antelope and EOSIO blockchains. It allows users to query and update all smart contracts across multiple chains, offering comprehensive documentation and CRUD operations. It's a versatile tool for developers seeking interoperability between various blockchains.

Live example

For a SmartQL GUI smartql.relocke.io.

smartql screenshot

Installation

For Node.js, to install smartql and the peer dependency graphql run:

npm install smartql graphql

For Deno.js, to install smartql add to your deno.json configuration file these imports:

{
  "imports": {
    "universal-sha256-js/": "https://deno.land/x/sha256js/",
    "universal-hmac-sha256-js/": "https://deno.land/x/hmacsha256/",
    "universal-hmac-sha256-js/hmac-sha256-node.mjs": "https://deno.land/x/hmacsha256/hmac-sha256-deno.mjs",
    "base58-js/": "https://deno.land/x/base58/",
    "isomorphic-secp256k1-js/": "https://deno.land/x/secp256k1js/",
    "ripemd160-js/": "https://deno.land/x/ripemd160js@v2.0.3/",
    "eosio-wasm-js/": "https://deno.land/x/eosio_wasm_js/",
    "eosio-ecc/": "https://deno.land/x/eosio_ecc/",
    "graphql": "https://cdn.skypack.dev/graphql"
  }
}

Examples

See the examples folder on how to run SmartQL as a Node.js endpoint.

Query a blockchain account

import fetch from "node-fetch";
import SmartQL from "smartql/smartql.mjs";

const { data } = await SmartQL(
  {
    query: /*GraphQL*/ `{
    blockchain{
      get_account(account_name:"relockeblock") {
        core_liquid_balance
        ram_quota
        net_weight
        cpu_weight
        ram_usage
        permissions {
          linked_actions {
            account
            action
          }
          required_auth {
            keys {
              key
              weight
            }
            threshold
          }
        }
      }
    }
  }`
  fetch,
  rpc_url: "https://jungle.relocke.io",
  headers: {
    "content-type": "application/json"
  }
  },
);

console.log(data);

Logged output included an account infomation.

Transfer EOS cryptocurrency

import fetch from "node-fetch";
import SmartQL from "smartql";

const { data } = await SmartQL({
  query: /*GraphQL*/ `mutation{
      push_transaction(actions: [{
        eosio_token:{
          transfer: {
            authorization:{
              actor:"relockeblock"
            }
            to:"relockechain"
            from:"relockeblock"
            memo: ""
            quantity: "0.0002 EOS"
          }
        }
      }]) {
        transaction_id
        block_num
      }
    }`,
  contracts: ["eosio.token"],
  private_keys: ["PVT_K1_…"], // legacy keys support.
  fetch,
  rpc_url: "https://eos.relocke.io", // eos blockchain.
  headers: {
    "content-type": "application/json"
  }
});

console.log(data);

Logged output includes transaction_id and block_num

Ways to require in CJS

Note

As this package is ESM if you need to require it in a Common JS package, then you can import like this:

(async function () {
  const { default: SmartQL } = await import("smartql");
  const { data } = await SmartQL({…})
})();

Requirements

Supported runtime environments:

Exports

The npm package smartql features optimal JavaScript module design. It doesn’t have a main index module, so use deep imports from the ECMAScript modules that are exported via the package.json field exports:

12.0.0

1 year ago

13.0.2

1 year ago

13.0.3

1 year ago

13.0.0

1 year ago

13.0.1

1 year ago

11.1.3

1 year ago

11.1.1

1 year ago

11.1.2

1 year ago

11.1.0

1 year ago

12.0.0-beta.4

1 year ago

12.0.0-beta.5

1 year ago

12.0.0-beta.2

1 year ago

12.0.0-beta.0

1 year ago

12.0.0-beta.1

1 year ago

13.1.3

1 year ago

13.1.4

1 year ago

13.1.1

1 year ago

13.1.2

1 year ago

13.1.0

1 year ago

13.0.1-beta.1

1 year ago

10.0.0

2 years ago

10.0.1

2 years ago

11.0.0-rc.1

1 year ago

11.0.0-rc.2

1 year ago

11.0.0-rc.3

1 year ago

8.1.2

2 years ago

11.0.0-rc.10

1 year ago

11.0.0-rc.13

1 year ago

11.0.0-rc.14

1 year ago

11.0.0-rc.11

1 year ago

11.0.0-rc.12

1 year ago

11.0.0-rc.17

1 year ago

11.0.0-rc.15

1 year ago

11.0.0-rc.16

1 year ago

11.0.0-rc.4

1 year ago

11.0.0-rc.5

1 year ago

11.0.0-rc.6

1 year ago

11.0.0-rc.7

1 year ago

11.0.0-rc.8

1 year ago

11.0.0-rc.9

1 year ago

9.0.0

2 years ago

11.0.0-rc

1 year ago

11.0.2

1 year ago

11.0.0

1 year ago

11.0.1

1 year ago

7.3.0

2 years ago

7.1.0

2 years ago

8.1.0

2 years ago

8.1.1

2 years ago

7.2.0

2 years ago

7.0.1

2 years ago

8.0.1

2 years ago

8.0.0

2 years ago

7.0.0-beta-25

2 years ago

7.0.0-beta-26

2 years ago

7.0.0

2 years ago

7.0.0-beta-23

2 years ago

7.0.0-beta-24

2 years ago

7.0.0-beta-20

2 years ago

7.0.0-beta-21

2 years ago

7.0.0-beta-22

2 years ago

7.0.0-beta-14

2 years ago

7.0.0-beta-15

2 years ago

7.0.0-beta-16

2 years ago

7.0.0-beta-17

2 years ago

7.0.0-beta-18

2 years ago

7.0.0-beta-19

2 years ago

7.0.0-beta-12

3 years ago

7.0.0-beta-13

3 years ago

7.0.0-beta-11

3 years ago

7.0.0-beta-10

3 years ago

7.0.0-beta-9

3 years ago

7.0.0-beta-5

3 years ago

7.0.0-beta-6

3 years ago

7.0.0-beta-3

3 years ago

7.0.0-beta-7

3 years ago

7.0.0-beta-8

3 years ago

7.0.0-beta-1

3 years ago

7.0.0-beta-2

3 years ago

7.0.0-beta-0

3 years ago

6.0.4-beta-5

3 years ago

6.0.4-beta-3

3 years ago

6.0.4-beta-2

3 years ago

6.0.4-beta-1

3 years ago

6.0.4-beta-0

3 years ago

6.0.3

3 years ago

6.0.4

3 years ago

6.0.1

3 years ago

6.0.2

3 years ago

6.0.0

3 years ago

6.0.0-alpha-2

3 years ago

6.0.0-alpha-3

3 years ago

6.0.0-alpha-4

3 years ago

6.0.0-alpha-5

3 years ago

6.0.0-alpha-6

3 years ago

5.1.0

3 years ago

6.0.0-alpha-0

3 years ago

6.0.0-alpha-1

3 years ago

5.0.0

3 years ago

5.0.0-beta.11

3 years ago

5.0.0-beta.10

3 years ago

5.0.0-beta.8

3 years ago

5.0.0-beta.9

3 years ago

5.0.0-alpha.7

3 years ago

5.0.0-alpha.6

3 years ago

5.0.0-alpha.5

3 years ago

5.0.0-alpha.4

3 years ago

5.0.0-alpha.8

3 years ago

4.0.0

3 years ago

5.0.0-alpha.3

3 years ago

5.0.0-alpha.2

3 years ago

5.0.0-alpha.1

3 years ago

5.0.0-alpha.0

3 years ago

3.0.1

3 years ago

3.0.0

3 years ago

2.0.1

3 years ago

2.0.0

3 years ago

1.0.0-rc

3 years ago

1.0.6

3 years ago

1.0.5

3 years ago

1.0.2

3 years ago

1.0.1

3 years ago

1.0.4

3 years ago

1.0.3

3 years ago

1.0.0

3 years ago