Product
Introducing SSO
Streamline your login process and enhance security by enabling Single Sign-On (SSO) on the Socket platform, now available for all customers on the Enterprise plan, supporting 20+ identity providers.
@arianee/arianee-protocol-client
Advanced tools
A simple library that lets you interact with the Arianee protocols.
Readme
A simple library that lets you interact with the Arianee protocols.
You need the @arianee/core
package to use this library.
npm i @arianee/core @arianee/arianee-protocol-client
Instantiate the client and connect it to the network of your choice. (see this github repository for v1 networks).
const client = new ArianeeProtocolClient(Core.fromMnemonic('... ...'));
const protocol = await client.connect('sokol');
Because there exists different versions of the protocol, the connect
method returns an instance of either ProtocolClientV1
or ProtocolClientV2
.
You can check the version of the protocol you are connected to with a simple if:
if (protocol instanceof ProtocolClientV1) {
// protocol deployed on the connected network is v1
// you can call the contracts methods directly like that:
const uri = await protocol.identityContract.addressURI('0x305051e9a023fe881EE21cA43fd90c460B427Caa');
} else if (protocol instanceof ProtocolClientV2) {
// protocol deployed on the connected network is v2
}
By default, the library uses our protocol details resolver API to fetch the ProtocolDetails
when calling the connect
method. If you don't want to use our API, you can pass your own protocol resolver by setting the optional protocolDetailsResolver
property in the constructor's options.
The version two of the Arianee protocol has optional features. You can use the requiresV2Feature
helper to assert that a certain feature is enabled before doing a call or transaction. The helper will throw an UnavailableFeatureError
if the required feature is not enabled.
import { requiresV2Feature, UnavailableFeatureError} from '@arianee/arianee-protocol-client';
async burnSmartAsset() {
const protocol: ProtocolClientV2 = ...;
try {
requiresV2Feature(ProtocolV2Feature.burnable, protocol);
// code after this line will be executed if and only if the feature is enabled
...
} catch (e) {
if(e instanceof UnavailableFeatureError) {
// the burnable feature is not enabled on the connected network
// you can't burn the smart asset
}
}
}
FAQs
A simple library that lets you interact with the Arianee protocols.
The npm package @arianee/arianee-protocol-client receives a total of 181 weekly downloads. As such, @arianee/arianee-protocol-client popularity was classified as not popular.
We found that @arianee/arianee-protocol-client demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 8 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Product
Streamline your login process and enhance security by enabling Single Sign-On (SSO) on the Socket platform, now available for all customers on the Enterprise plan, supporting 20+ identity providers.
Security News
Tea.xyz, a crypto project aimed at rewarding open source contributions, is once again facing backlash due to an influx of spam packages flooding public package registries.
Security News
As cyber threats become more autonomous, AI-powered defenses are crucial for businesses to stay ahead of attackers who can exploit software vulnerabilities at scale.