Skip to content

Class: RequestClient<ModelTypes, Alias>

react.RequestClient

The RequestClient extends the Core class as a server-side client for prefetching and serializing records so they can be hydrated on the browser side.

It is exported by the react module.

import { RequestClient } from '@self.id/react'

Type parameters

Name Type
ModelTypes extends ModelTypeAliases = CoreModelTypes
Alias extends keyof ModelTypes["definitions"] = keyof ModelTypes["definitions"]

Hierarchy

  • Core<ModelTypes>

RequestClient

Constructors

constructor

new RequestClient<ModelTypes, Alias>(params)

Type parameters

Name Type
ModelTypes extends ModelTypeAliases<Record<string, any>, Record<string, string>, Record<string, string>> = ModelTypes
Alias extends string | number | symbol = keyof ModelTypes["definitions"]

Parameters

Name Type
params RequestClientParams<ModelTypes>

Overrides

Core<ModelTypes\>.constructor

Accessors

ceramic

get ceramic(): CeramicClient

Ceramic HTTP Client instance used internally.

Returns

CeramicClient

Inherited from

Core.ceramic


dataModel

get dataModel(): DataModel<ModelTypes, ModelTypesToAliases<ModelTypes>>

DataModel runtime instance used internally.

Returns

DataModel<ModelTypes, ModelTypesToAliases<ModelTypes>>

Inherited from

Core.dataModel


dataStore

get dataStore(): DIDDataStore<ModelTypes, keyof ModelTypes["definitions"]>

DID DataStore instance used internally.

Returns

DIDDataStore<ModelTypes, keyof ModelTypes["definitions"]>

Inherited from

Core.dataStore


resolver

get resolver(): Resolver

DID resolver instance used internally.

Returns

Resolver

Inherited from

Core.resolver


tileLoader

get tileLoader(): TileLoader

Tile loader instance used internally.

Returns

TileLoader

Inherited from

Core.tileLoader


viewerID

get viewerID(): null | string

Viewer ID associated to the request, if found in cookie string.

Returns

null | string

Methods

get

get<Key, ContentType>(key, id): Promise<null | ContentType>

Load the record content for a given definition alias and account.

Uses toDID to resolve the account.

Type parameters

Name Type
Key extends string | number | symbol
ContentType DefinitionContentType<ModelTypes, Key>

Parameters

Name Type
key Key
id string

Returns

Promise<null | ContentType>

Inherited from

Core.get


getAccountDID

getAccountDID(account): Promise<string>

Load the DID string for a given CAIP-10 account using a CAIP-10 link, or throw an error if not linked.

Parameters

Name Type
account string

Returns

Promise<string>

Inherited from

Core.getAccountDID


getState

getState(): RequestState

Return a serialized request state possibly containing the current viewer ID and prefetched records so they can be injected on the browser side, notably in the Provider.

Returns

RequestState


prefetch

prefetch<Key>(key, id?): Promise<boolean>

Prefetch loading a record so it can be exported using getState.

Type parameters

Name Type
Key extends string | number | symbol

Parameters

Name Type
key Key
id null | string

Returns

Promise<boolean>


toDID

toDID(accountOrDID): Promise<string>

Turn a DID or CAIP-10 string into a DID string.

If the input is a DID string, it will be returned as-is, otherwise getAccountDID will be used.

Parameters

Name Type
accountOrDID string

Returns

Promise<string>

Inherited from

Core.toDID