このセクションでは、DID Space コンポーネントライブラリ全体で使用されるコア TypeScript の型とインターフェースの詳細なリファレンスを提供します。これらのデータ構造を理解することは、コンポーネントのプロパティを正しく型付けし、アプリケーションの状態を管理するために不可欠です。
DIDSpaceStatus
DID Space のさまざまな接続状態を表す列挙型です。これは DIDSpaceConnection のようなコンポーネントで現在のステータスを視覚的に表示するために使用されます。
DIDSpaceStatus Enum
export enum DIDSpaceStatus {
LOADING = 'loading',
CONNECTED = 'connected',
DISCONNECTED = 'disconnected',
/** 利用不可、サブスクリプションステータスに関連(例:期限切れ、支払い遅延、使用量不足など) */
UNAVAILABLE = 'unavailable',
}| メンバー | 値 | 説明 |
|---|---|---|
LOADING | 'loading' | コンポーネントは現在、接続またはスペースのステータスの取得を試みています。 |
CONNECTED | 'connected' | DID Space への正常でアクティブな接続が確立されています。 |
DISCONNECTED | 'disconnected' | コンポーネントは DID Space に接続されていません。 |
UNAVAILABLE | 'unavailable' | サブスクリプションの期限切れや使用量不足などの問題により、DID Space にアクセスできません。 |
DIDSpaceGateway
このインターフェースは、DID Space ゲートウェイに関するすべての必要な情報を含むオブジェクトの構造を定義します。これは DIDSpaceConnection のようなコンポーネントがスペースの詳細をレンダリングするためのキープロパティです。
DIDSpaceGateway Interface
export interface DIDSpaceGateway {
did: string;
name: string;
url: string;
endpoint: string;
ownerDid: string;
protected?: boolean;
loading?: boolean;
}- did
string(required) — スペースの一意の分散型識別子(DID)。 - name
string(required) — スペースの表示名。 - url
string(required) — スペースのウェブインターフェースのベースURL(例:https://spaces.arcblock.io/app)。 - endpoint
string(required) — スペースと対話するためのAPIエンドポイントURL。 - ownerDid
string(required) — スペースの所有者のDID。 - protected
boolean— スペースへのアクセスに認証が必要かどうかを示します。 - loading
boolean— スペースのデータが現在取得中であることを示すフラグ。
AuthorizeConnect
このインターフェースは、ユーザーが接続を開始したときに表示される認証モーダルの設定オプションを定義します。
AuthorizeConnect Interface
export interface AuthorizeConnect {
open: boolean;
action: string;
checkFn: Function;
messages: {
title: string;
scan: string;
confirm: string;
success: React.ReactNode;
};
prefix?: string;
baseUrl?: string;
webWalletUrl?: string;
maxIdleTime?: number;
checkTimeout?: number;
extraParams?: Record<string, any>;
}- open
boolean(required) — 接続モーダルの表示/非表示を制御します。 - action
string(required) — 認証リクエストのアクションタイプ(例:「connect」)。 - checkFn
Function(required) — 認証ステータスをポーリングまたは検証するために使用される関数。 - messages
object(required) — 認証モーダルに表示するカスタムテキストとコンテンツ。- title
string(required) — モーダルのタイトル。 - scan
string(required) — スキャンステップの手順。 - confirm
string(required) — 確認ステップの手順。 - success
React.ReactNode(required) — 接続成功時に表示するコンテンツ。
- title
- prefix
string— DID Connect エンドポイントのURLプレフィックス。 - baseUrl
string— DID Connect サービスのベースURL。 - webWalletUrl
string— 接続に使用するウェブウォレットのURL。 - maxIdleTime
number— セッションがタイムアウトするまでの最大アイドル時間(ミリ秒)。 - checkTimeout
number— ステータスチェック関数のタイムアウト(ミリ秒)。 - extraParams
Record<string, any>— 認証リクエストに含める追加パラメータ。
認証オプション
これらのインターフェースは、DID Space に接続する際の認証プロセスをカスタマイズするために利用可能なオプションを定義します。
BaseAuthOptions
あらゆる認証リクエストに共通のオプションセットを提供し、コールバックとセッションパラメータの設定に使用されます。
BaseAuthOptions Interface
export interface BaseAuthOptions {
action?: string;
checkFn?: Function;
extraParams?: Record<string, string>;
checkTimeout?: number;
onSuccess?: (response: Record<string, string>, decrypt: Function) => Promise<void>;
onClose?: () => void;
}- action
string— 認証リクエストの特定のアクション(例:「login」)。 - checkFn
Function— 認証ステータスをポーリングまたは検証するためのカスタム関数。 - extraParams
Record<string, string>— 認証リクエストに含める追加パラメータ。 - checkTimeout
number— ステータスチェック関数のタイムアウト(ミリ秒)。 - onSuccess
Function— 認証成功時に実行されるコールバック関数。 - onClose
Function— 認証ダイアログが閉じられたときに実行されるコールバック関数。
GatewayAuthOptions
BaseAuthOptions を拡張し、DID Space ゲートウェイに特化して接続するために必要な追加プロパティを含みます。
GatewayAuthOptions Interface
export interface GatewayAuthOptions extends BaseAuthOptions {
spaceDid?: string;
spaceGatewayUrl?: string;
}- spaceDid
string— ターゲット DID Space の DID。 - spaceGatewayUrl
string— DID Space のゲートウェイのURL。
このインターフェースは BaseAuthOptions のすべてのプロパティを継承します。
型エイリアス
利便性と後方互換性のために、以下の型エイリアスが提供されています。新しいコードではプライマリ型を使用することをお勧めします。
Compatibility Aliases
// 互換性のため
export type SpaceGateway = DIDSpaceGateway;
export const SpaceStatus = DIDSpaceStatus;SpaceGatewayはDIDSpaceGatewayのエイリアスです。SpaceStatusはDIDSpaceStatus列挙型のエイリアスです。
次のステップ
コアデータ構造に慣れたところで、それらが主要なコンポーネントでプロパティとしてどのように使用されるかを探ってみましょう。