betty.content module

Content plugins.

class betty.content.ContentBuilder

Bases: ABC, Plugin[ContentBuilderDefinition]

A content builder plugin.

abstractmethod async build(*, document: Document) str | None

Render the content.

final class betty.content.ContentBuilderDefinition

Bases: HumanFacingDefinition, PluginClsDefinition[ContentBuilder]

The content builder plugin type.

Plugin type ID

content-builder

Definition

@ContentBuilderDefinition(...)

Built-in content builders:

box (Box)
Box
map (Map)
Map
map-attribution (MapAttribution)
Map attribution
notes (Notes)
Notes
raspberry-mint-citations (Citations)
Citations
raspberry-mint-color-style (ColorStyle)
Color style
raspberry-mint-columns (Columns)
Columns
raspberry-mint-enclosees (Enclosees)
Enclosees
raspberry-mint-entity-card (EntityCard)
Entity card
raspberry-mint-external-links (ExternalLinks)
External links
raspberry-mint-facts (Facts)
Facts: Other entities that reference a citation or source to back up their claims.
raspberry-mint-families (Families)
Families
raspberry-mint-file-referees (FileReferees)
File referees
raspberry-mint-incomplete-translation-warning (IncompleteTranslationWarning)
Incomplete translation warning
raspberry-mint-media (Media)
Media: A single file in a media display
raspberry-mint-media-gallery (MediaGallery)
Media gallery: Multiple files in a media gallery display
raspberry-mint-presences (Presences)
Presences
raspberry-mint-section (Section)
Section
raspberry-mint-timeline (Timeline)
Timeline
render (Render)
Rendered content
static (Static)
Static content
tree (Tree)
Family tree
wikipedia-summary (WikipediaSummary)
Wikipedia summary
__init__(plugin_id: ResolvableMachineName, *, label: ResolvableLocalizable, auto: bool = False, description: ResolvableLocalizable | None = None, requires: Requires = ())
static type() PluginTypeDefinition[Self]

The plugin type definition.

final class betty.content.ContentBuilderManufacturer

Bases: PluginManufacturer[ContentBuilderDefinition, ContentBuilder]

The content builder manufacturer.

async betty.content.build(document: Document, contents: Iterable[ContentBuilder], /) Markup | None

Build content for the given document and contents.