Files
nym/clients/validator
Dave Hrycyszyn 5652eb7ee3 A pull request for discussion about contract state variables (#563)
* A pull request for discussion about contract state variables

* Updated contract state struct

* Introduced transaction to update the contract state

* Moved transactions to separate file

* Corrected return type on query

* Corrected query match

* Added test for state params query

* Test for state params update

* Removed unused imports

* Helper functions to query for state params

* Removed hardcoded inside bond, old mix bond value

* Helper function to update contract state

* Changed typescript StateParam from numbers to strings

* Somehow unresolved post-merge issues in tests

* Introduced additional helpers for the validator client to use the new contract features

* Using the state-specified bond values

Co-authored-by: Jędrzej Stuczyński <jedrzej.stuczynski@gmail.com>
2021-04-09 13:10:01 +01:00
..
2021-03-24 11:49:58 +00:00
2021-03-09 11:32:51 +00:00
2021-03-24 11:49:58 +00:00

Nym Validator Client

A TypeScript client for interacting with CosmWasm smart contracts in Nym validators.

Running examples

With the code checked out, cd examples. This folder contains runnable example code that will set up a blockchain and allow you to interact with it through the client.

Running tests

npm test

You can also trigger test execution with a test watcher. I don't have the centuries of life left to me that are needed to fight through the arcana of wiring up a working TypeScript mocha triggered execution setup, so for now my Cargo-based hack is:

cargo watch -s "cd clients/validator && npm test"

It's ugly but works fine if you have Cargo installed. TypeScript setup help happily accepted here.

Generating Documentation

You can generate docs by running npm run docs. Generated output will appear in the docs directory.

Packaging

If you're a Nym platform developer who's made changes to the client and wants to re-publish the package to NPM, here's how you do it:

  1. Bump the version number (use SemVer)
  2. npm run build
  3. npm login (if you haven't already)
  4. npm publish