Neck Protection Mandate

    stargaze-zone
    TypeScript icon, indicating that this package has built-in type declarations

    0.4.0 • Public • Published

    stargaze-zone

    TS library with Cosmos SDK and Stargaze smart contracts.

    npm install stargaze-zone
    

    Cosmos SDK clients

    import { stargaze } from 'stargaze-zone';
    
    const main = async () => {
       const { createLCDClient } = stargaze.ClientFactory; 
       const client = await createLCDClient({ restEndpoint: REST_ENDPOINT });
    
       // now you can query the modules
       const balance = await client.cosmos.bank.v1beta1
            .allBalances({ address: 'stars1addresshere' });
    };

    Stargaze contracts

    clients

    All contracts are scoped under the contracts object:

    import { contracts } from 'stargaze-zone';
    const {
        SG721Base,
        VendingFactory,
        VendingMinter,
        Whitelist
    } = contracts;

    Then each contract will have clients, for example for Whitelist:

    const {
        WhitelistClient,
        WhitelistMessageComposer,
        WhitelistQueryClient
    } = Whitelist;

    Queries

    const queryClient = new WhitelistQueryClient(wasmClient, contractAddress);
    
    const hasStarted = await queryClient.hasStarted()
    const members = await queryClient.members({limit: 10})

    Mutations

    const client = new WhitelistClient(signingWasmClient, sender, contractAddress);
    
    await client.addMembers({
        toAdd: ['name1', 'name2']
    })

    CosmWasm Messages

    import { cosmwasm } from "stargaze-zone";
    
    const {
        clearAdmin,
        executeContract,
        instantiateContract,
        migrateContract,
        storeCode,
        updateAdmin
    } = cosmwasm.wasm.v1.MessageComposer.withTypeUrl;

    IBC Messages

    import { ibc } from 'stargaze-zone';
    
    const {
        transfer
    } = ibc.applications.transfer.v1.MessageComposer.withTypeUrl

    Cosmos Messages

    import { cosmos } from 'stargaze-zone';
    
    const {
        fundCommunityPool,
        setWithdrawAddress,
        withdrawDelegatorReward,
        withdrawValidatorCommission
    } = cosmos.distribution.v1beta1.MessageComposer.fromPartial;
    
    const {
        multiSend,
        send
    } = cosmos.bank.v1beta1.MessageComposer.fromPartial;
    
    const {
        beginRedelegate,
        createValidator,
        delegate,
        editValidator,
        undelegate
    } = cosmos.staking.v1beta1.MessageComposer.fromPartial;
    
    const {
        deposit,
        submitProposal,
        vote,
        voteWeighted
    } = cosmos.gov.v1beta1.MessageComposer.fromPartial;

    Credits

    🛠 Built by Cosmology — if you like our tools, please consider delegating to our validator ⚛️

    Code built with the help of these related projects:

    Keywords

    none

    Install

    npm i stargaze-zone

    DownloadsWeekly Downloads

    1

    Version

    0.4.0

    License

    SEE LICENSE IN LICENSE

    Unpacked Size

    5.59 MB

    Total Files

    637

    Last publish

    Collaborators

    • pyramation