JSPM

  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 323
  • Score
    100M100P100Q85182F
  • License MIT

Particle Network SDK wallet module for connecting to Web3-Onboard. Web3-Onboard makes it simple to connect Ethereum hardware and software wallets to your dapp. Features standardised spec compliant web3 providers for all supported wallets, framework agnostic modern javascript UI with code splitting, CSS customization, multi-chain and multi-account support, reactive wallet state subscriptions and real-time transaction state change notifications.

Package Exports

  • @web3-onboard/particle-network
  • @web3-onboard/particle-network/dist/index.js

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (@web3-onboard/particle-network) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

@web3-onboard/particle-network

Wallet module for connecting Particle Network to web3-onboard

Install

npm i @web3-onboard/core @web3-onboard/particle-network

Options

See the Particle Network Docs for the extensive list of options.

Usage

import Onboard from '@web3-onboard/core'
import particleModule from '@web3-onboard/particle-network'

const particle = particleModule({
  projectId: 'YOUR PROJECT ID',
  clientKey: 'YOUR CLIENT KEY',
  appId: 'YOUR APP ID'
  // Can also add wallet object + preferredAuthType for further customization
})

const onboard = Onboard({
  // ... other Onboard options
  wallets: [
    particle
    //... other wallets
  ]
})

const connectedWallets = await onboard.connectWallet()
console.log(connectedWallets)

Types

/**
 * Enumerates the supported authentication types.
 */
type AuthTypes = 'email' | 'phone' | 'google' | 'apple' | 'twitter' | 'facebook' | 'microsoft' | 'linkedin' | 'github' | 'twitch' | 'discord';

/**
 * Interface that describes the preferred authentication type.
 * @property {AuthTypes} type - The preferred type of authentication.
 * @property {boolean} setAsDisplay - Indicates whether the type should be displayed within the UI.
 */
interface PreferredAuthType {
  type: AuthTypes;
  setAsDisplay: boolean;
}

/**
 * Options for initializing the Particle Auth module.
 * @property {string} projectId - Particle Network project ID.
 * @property {string} clientKey - Particle Network client key.
 * @property {string} appId - Particle Network application ID.
 * @property {string} [chainName] - (Optional) Specifies the name of the blockchain. Handled automatically if left blank.
 * @property {number} [chainId] - (Optional) Specifies the blockchain's numeric ID. Handled automatically if left blank.
 * @property {object} [wallet] - (Optional) Configuration for the wallet.
 * @property {AuthTypes | PreferredAuthType} [preferredAuthType] - (Optional) Specifies the preferred type of authentication.
 */
interface ParticleAuthModuleOptions {
  projectId: string;
  clientKey: string;
  appId: string;
  chainName?: string;
  chainId?: number;
  wallet?: object;
  preferredAuthType?: AuthTypes | PreferredAuthType;
}