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¶
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