JSPM

@settlemint/sdk-blockscout

1.1.14-pr6dc76693
  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 6101
  • Score
    100M100P100Q137671F
  • License FSL-1.1-MIT

Blockscout integration module for SettleMint SDK, enabling blockchain explorer and analytics functionality

Package Exports

    Readme

    SettleMint logo

    SettleMint SDK

    https://settlemint.com
    Integrate SettleMint into your application with ease.

    CI status License npm stars

    Documentation   •   NPM   •   Issues

    Table of Contents

    About

    The SettleMint Blockscout SDK provides a seamless way to interact with Blockscout APIs for blockchain data exploration and analysis. It enables you to easily query transaction data, blocks, addresses, smart contracts and more from your SettleMint-powered blockchain networks.

    For detailed information about using Blockscout with the SettleMint platform, check out our official documentation.

    API Reference

    Functions

    createBlockscoutClient()

    createBlockscoutClient<Setup>(options, clientOptions?): object

    Defined in: sdk/blockscout/src/blockscout.ts:108

    Creates a Blockscout GraphQL client with proper type safety using gql.tada

    Type Parameters
    Type Parameter
    Setup extends AbstractSetupSchema
    Parameters
    Parameter Type Description
    options Omit<{ accessToken: string; instance: string; runtime: "server"; } | { runtime: "browser"; }, "runtime"> & Record<string, unknown> Configuration options for the client
    clientOptions? RequestConfig Optional GraphQL client configuration options
    Returns

    object

    An object containing the GraphQL client and initialized gql.tada function

    Name Type Defined in
    client GraphQLClient sdk/blockscout/src/blockscout.ts:112
    graphql initGraphQLTada<Setup> sdk/blockscout/src/blockscout.ts:113
    Throws

    Will throw an error if the options fail validation

    Example
    import { createBlockscoutClient } from '@settlemint/sdk-blockscout';
    import type { introspection } from "@schemas/blockscout-env";
    
    // Server-side usage
    const { client, graphql } = createBlockscoutClient<{
      introspection: introspection;
      disableMasking: true;
      scalars: {
        AddressHash: string;
        Data: string;
        DateTime: string;
        Decimal: string;
        FullHash: string;
        Json: string;
        NonceHash: string;
        Wei: string;
      };
    }>({
      instance: process.env.SETTLEMINT_BLOCKSCOUT_ENDPOINT,
      accessToken: process.env.SETTLEMINT_ACCESS_TOKEN
    });
    
    // Browser-side usage
    const { client, graphql } = createBlockscoutClient<{
      introspection: introspection;
      disableMasking: true;
      scalars: {
        AddressHash: string;
        Data: string;
        DateTime: string;
        Decimal: string;
        FullHash: string;
        Json: string;
        NonceHash: string;
        Wei: string;
      };
    }>({});
    
    // Making GraphQL queries
    const query = graphql(`
      query GetTransaction($hash: String!) {
        transaction(hash: $hash) {
          hash
          blockNumber
          value
          gasUsed
        }
      }
    `);
    
    const result = await client.request(query, {
      hash: "0x123abc..."
    });

    Type Aliases

    ClientOptions

    ClientOptions: { accessToken: string; instance: string; runtime: "server"; } | { runtime: "browser"; }

    Defined in: sdk/blockscout/src/blockscout.ts:32

    Type definition for client options derived from the ClientOptionsSchema


    RequestConfig

    RequestConfig: ConstructorParameters<*typeof* GraphQLClient>[1]

    Defined in: sdk/blockscout/src/blockscout.ts:10

    Type definition for GraphQL client configuration options

    Variables

    ClientOptionsSchema

    const ClientOptionsSchema: ZodDiscriminatedUnion<ClientOptions>

    Defined in: sdk/blockscout/src/blockscout.ts:18

    Schema for validating client options for the Blockscout client. Defines two possible runtime configurations:

    1. Server-side with instance URL and access token
    2. Browser-side with no additional configuration needed

    Contributing

    We welcome contributions from the community! Please check out our Contributing guide to learn how you can help improve the SettleMint SDK through bug reports, feature requests, documentation updates, or code contributions.

    License

    The SettleMint SDK is released under the FSL Software License. See the LICENSE file for more details.