Gno Provider
The Gno Provider
is an extension on the tm2-js-client
Provider
,
outlined here. Both JSON-RPC and WS providers are included with the package.
Instantiation
new GnoWSProvider
Creates a new instance of the Gno WebSocket Provider, based on tm2-js-client
WSProvider
.
Parameters
Same as tm2-js-client
WSProvider
.
Usage
new GnoWSProvider('ws://staging.gno.land:26657/ws');
// provider with WS connection is created
new GnoJSONRPCProvider
Creates a new instance of the Gno JSON-RPC Provider, based on tm2-js-client
JSONRPCProvider
.
Parameters
Same as tm2-js-client
JSONRPCProvider
.
Usage
new GnoJSONRPCProvider('http://staging.gno.land:36657');
// provider is created
Realm Methods
getRenderOutput
Executes the Render(path) method in read-only mode
Parameters
packagePath
string the gno package pathpath
string the render pathheight
number the height for querying. If omitted, the latest height is used (optional, default0
)
Returns Promise<string>
Usage
await provider.getRenderOutput('gno.land/r/demo/demo_realm', '');
// ## Hello World!
getFunctionSignatures
Fetches public facing function signatures
Parameters
packagePath
string the gno package pathheight
number the height for querying. If omitted, the latest height is used (optional, default0
)
Returns Promise<FunctionSignature[]>
Usage
await provider.getFunctionSignatures('gno.land/r/demo/foo20');
/*
[
{ FuncName: 'TotalSupply', Params: null, Results: [ [Object] ] },
{
FuncName: 'BalanceOf',
Params: [ [Object] ],
Results: [ [Object] ]
},
{
FuncName: 'Allowance',
Params: [ [Object], [Object] ],
Results: [ [Object] ]
},
{
FuncName: 'Transfer',
Params: [ [Object], [Object] ],
Results: null
},
{
FuncName: 'Approve',
Params: [ [Object], [Object] ],
Results: null
},
{
FuncName: 'TransferFrom',
Params: [ [Object], [Object], [Object] ],
Results: null
},
{ FuncName: 'Faucet', Params: null, Results: null },
{ FuncName: 'Mint', Params: [ [Object], [Object] ], Results: null },
{ FuncName: 'Burn', Params: [ [Object], [Object] ], Results: null },
{ FuncName: 'Render', Params: [ [Object] ], Results: [ [Object] ] }
]
*/
evaluateExpression
Evaluates any expression in readonly mode and returns the results
Parameters
packagePath
string the gno package pathexpression
string the expression to be evaluatedheight
number the height for querying. If omitted, the latest height is used (optional, default0
)
Returns Promise<string>
Usage
await provider.evaluateExpression('gno.land/r/demo/foo20', 'TotalSupply()')
// (10100000000 uint64)
getFileContent
Fetches the file content, or the list of files if the path is a directory
Parameters
packagePath
string the gno package pathheight
number the height for querying. If omitted, the latest height is used (optional, default0
)
Returns Promise<string>
Usage
await provider.getFileContent('gno.land/r/demo/foo20')
/*
foo20.gno
foo20_test.gno
*/