DesignNodeModel
Defined in: packages/core/src/models/design-nodes.ts:53
Cache of design file/node metadata and node renders with TTL refresh.
Constructors
Section titled “Constructors”Constructor
Section titled “Constructor”new DesignNodeModel(
db,credentials,providers,options?):DesignNodeModel
Defined in: packages/core/src/models/design-nodes.ts:62
Parameters
Section titled “Parameters”credentials
Section titled “credentials”providers
Section titled “providers”readonly DesignProvider[]
options?
Section titled “options?”connections?
Section titled “connections?”Members’ own connections, used when the project has no credential.
logger?
Section titled “logger?”storage?
Section titled “storage?”tables?
Section titled “tables?”Returns
Section titled “Returns”DesignNodeModel
Methods
Section titled “Methods”cachedFor()
Section titled “cachedFor()”cachedFor(
projectId,urls,viewerId?):Promise<Map<string,DesignNode>>
Defined in: packages/core/src/models/design-nodes.ts:103
Cached rows for the given design URLs, keyed by URL (unparseable or uncached URLs are absent). A row fetched with someone’s own connection is only visible to that viewer.
Parameters
Section titled “Parameters”projectId
Section titled “projectId”string
readonly string[]
viewerId?
Section titled “viewerId?”string
Returns
Section titled “Returns”Promise<Map<string, DesignNode>>
get(
projectId,id):Promise<DesignNode|null>
Defined in: packages/core/src/models/design-nodes.ts:89
Cached row by id, scoped to the project, or null.
Parameters
Section titled “Parameters”projectId
Section titled “projectId”string
string
Returns
Section titled “Returns”Promise<DesignNode | null>
readRender()
Section titled “readRender()”readRender(
node):Promise<Buffer<ArrayBufferLike> |null>
Defined in: packages/core/src/models/design-nodes.ts:95
Cached render bytes of a node, or null when it has none (or storage is not wired).
Parameters
Section titled “Parameters”Returns
Section titled “Returns”Promise<Buffer<ArrayBufferLike> | null>
refresh()
Section titled “refresh()”refresh(
projectId,url,now?,viewerId?):Promise<DesignNode|null>
Defined in: packages/core/src/models/design-nodes.ts:121
Refresh one link (see refreshMany); null for unsupported URLs or nothing cached.
Parameters
Section titled “Parameters”projectId
Section titled “projectId”string
string
Date
viewerId?
Section titled “viewerId?”string
Returns
Section titled “Returns”Promise<DesignNode | null>
refreshMany()
Section titled “refreshMany()”refreshMany(
projectId,urls,options?):Promise<Map<string,DesignNode|null>>
Defined in: packages/core/src/models/design-nodes.ts:140
Refresh the given links’ metadata and renders when missing or past the TTL. Links of one file share one metadata call and one render call, and files run with bounded concurrency. Transient failures keep the previous cache; auth failures update the credential’s health. Never throws.
Parameters
Section titled “Parameters”projectId
Section titled “projectId”string
readonly string[]
options?
Section titled “options?”RefreshOptions = {}
Returns
Section titled “Returns”Promise<Map<string, DesignNode | null>>