Module: runtime
ComposeDB runtime module, converting a runtime composite to an executable GraphQL schema.
Installation
npm install @composedb/runtime
Classes
Type Aliases
ComposeRuntimeParams
Ƭ ComposeRuntimeParams: GetSchemaParams
& { cache?
: DocumentCache
| boolean
; ceramic
: CeramicApi
| string
; context?
: Context
}
Context
Ƭ Context: Object
Type declaration
Name | Type | Description |
---|---|---|
ceramic | CeramicApi | Ceramic client instance used internally. |
createDoc | <Content>(model : string , content : Content ) => Promise <ModelInstanceDocument <Content >> | Create a new document with the given model and content. |
createSingle | <Content>(model : string , content : Content ) => Promise <ModelInstanceDocument <Content >> | Create a new single document with the given model and content. |
getViewerID | () => string | null | ID of the current viewer (authenticated DID), if set. |
isAuthenticated | () => boolean | Returns whether the Ceramic client instance used internally is authenticated or not. When not authenticated, mutations will fail. |
loadDoc | <Content>(id : string | CommitID | StreamID , fresh? : boolean ) => Promise <ModelInstanceDocument <Content >> | Load a document by ID, using the cache if possible. |
loader | DocumentLoader | Document loader instance used internally. |
queryConnection | (query : ConnectionQuery ) => Promise <Connection <ModelInstanceDocument | null >> | Query the index for a connection of documents. |
queryCount | (query : BaseQuery ) => Promise <number > | Query the index for the total number of documents matching the query parameters. |
querySingle | (query : BaseQuery ) => Promise <ModelInstanceDocument | null > | Query the index for a single document. |
updateDoc | <Content>(id : string | StreamID , content : Content , options? : UpdateDocOptions ) => Promise <ModelInstanceDocument <Content >> | Update an existing document. |
ContextParams
Ƭ ContextParams: Object
Type declaration
Name | Type | Description |
---|---|---|
cache? | DocumentCache | boolean | Optional cache for documents. |
ceramic | CeramicApi | Ceramic client instance. |
fallbackViewerID? | string | null | Fallback viewer ID to use when the Ceramic instance is not authenticated. |
DocumentCache
Ƭ DocumentCache: Object
Type declaration
Name | Type |
---|---|
clear | () => any |
delete | (id : string ) => any |
get | (id : string ) => void | Promise <ModelInstanceDocument <Record <string , any >>> |
set | (id : string , value : Promise <ModelInstanceDocument <Record <string , any >>>) => any |
GetSchemaParams
Ƭ GetSchemaParams: Object
Type declaration
Name | Type | Description |
---|---|---|
definition? | RuntimeCompositeDefinition | Runtime composite definition, created using the Composite development tools. |
readonly? | boolean | Set the schema to read-only, disabling mutations support. |
schema? | GraphQLSchema | GraphQL Schema to use, ignores the definition and readonly parameters if provided. |
Functions
createContext
▸ createContext(params
): Context
Parameters
Name | Type |
---|---|
params | ContextParams |
Returns
createGraphQLSchema
▸ createGraphQLSchema(params
): GraphQLSchema
Create a GraphQL schema from a runtime composite definition
Parameters
Name | Type |
---|---|
params | CreateSchemaParams |
Returns
GraphQLSchema
getSchema
▸ getSchema(params
): GraphQLSchema
Use or create a GraphQL schema based on the provided parameters.
Parameters
Name | Type |
---|---|
params | GetSchemaParams |
Returns
GraphQLSchema
printGraphQLSchema
▸ printGraphQLSchema(definition
, readonly?
): string
Create a GraphQL schema from a runtime composite definition and return its string representation.
Parameters
Name | Type | Default value |
---|---|---|
definition | RuntimeCompositeDefinition | undefined |
readonly | boolean | false |
Returns
string