Skip to content

mecfs_bio.build_system.task.typst_diagram_task

Task that compiles Typst source into an SVG diagram asset.

Classes:

  • TypstDiagramTask –

    Compiles a Typst source (a .typ file or an inline string) into an SVG

TypstDiagramTask

Bases: GeneratingTask

Compiles a Typst source (a .typ file or an inline string) into an SVG diagram by shelling out to the typst CLI.

Methods:

Attributes:

deps property

deps: list[Task]

executor class-attribute instance-attribute

executor: Callable[[list[str]], str] = field(
    default=execute_command
)

meta instance-attribute

meta: DiagramFileMeta

source instance-attribute

source: TypstSource

execute

execute(
    scratch_dir: Path, fetch: Fetch, wf: WF
) -> FileAsset
Source code in mecfs_bio/build_system/task/typst_diagram_task.py
def execute(self, scratch_dir: Path, fetch: Fetch, wf: WF) -> FileAsset:
    src_path = self.source.resolve_to_path(scratch_dir)
    out_path = scratch_dir / (self.meta.asset_id + DIAGRAM_EXTENSION)
    self.executor(["typst", "compile", str(src_path), str(out_path)])
    return FileAsset(out_path)