Class

PlatformProvider

PlatformProvider(props)

<PlatformProvider />

Constructor

# new PlatformProvider(props)

DID Core Platform API Provider

Parameters:
Name Type Attributes Description
props PlatformContextType

Component properties

clientId string

Unique application id provided through Zippie Dashboard

permissions Array.<(PermissionDesc|string)>

A set of permissions this application would like to request from the user

agentUri string <optional>

The DID browser agent URI to use (Production, Sandbox, etc.)

sessionId string <optional>

Unique session identifier for multi-instance use (advanced).

Example
import { PlatformProvider, usePlatform } from "@zippie/did-react-components"

const REQUESTED_PERMISSIONS = [
  Permission.READ_EMAIL,
  Permission.READ_FULL_NAME,
]

const MyComponent = () => {
  const { isReady, isAppSignedIn, permissions, userinfo } = usePlatform()

  if (!isReady) return <LoadingPage />

  if (!isAppSignedIn) return <SignUpPage />

  if (!permissions.includes(PermissionDesc.READ_FULL_NAME)) {
    return <p>User denied request for permissions.</p>
  }

  return <h2>Hello, {userinfo.firstName}</h2>
}

export const MyApplication = () => {
  return (
    <PlatformProvider clientId="MyApplicationId" permissions={REQUESTED_PERMISSIONS}>
      <MyComponent />
    </PlatformProvider>
  )
}

Members

IAppData

# static appinfo

Provides application data

boolean

# static isAppSignedIn

Checks if the user is registered to the application

boolean

# static isReady

boolean

# static isUserSignedIn

Checks if user is signed in their Decentralized Identity

BrowserPlatformApi

# static platform

Provides platform data

IUserData

# static userinfo

Provides user's data in an application