Skip to main content

Function: extractMetadata()

extractMetadata(extraction, astsByArtifact, renderers, transforms?, transformContextsOrTargetArtifactId?, targetArtifactId?): ExtractedMetadata

Defined in: packages/core/src/domain/services/extract-metadata.ts:58

Orchestrates metadata extraction across multiple artifacts.

For each declared metadata field, looks up the corresponding artifact AST, runs the extractor, and assembles the result into an ExtractedMetadata.

Parameters

extraction

MetadataExtraction

The schema's metadata extraction declarations

astsByArtifact

ReadonlyMap<string, { root: SelectorNode; }>

Parsed ASTs keyed by artifact type ID

renderers

ReadonlyMap<string, SubtreeRenderer>

Subtree renderers keyed by artifact type ID

transforms?

ExtractorTransformRegistry

Named transform callbacks

transformContextsOrTargetArtifactId?

string | ReadonlyMap<string, ExtractorTransformContext>

Opaque caller-owned transform contexts keyed by artifact id, or the legacy target artifact id shortcut

targetArtifactId?

string

Optional filter: only extract fields where field.artifact === targetArtifactId

Returns

ExtractedMetadata

The extracted metadata with all available fields populated