Source code for dsw_document_template_tool._template_transform.science_europe

"""Science Europe-specific reversible source rewrites."""

from __future__ import annotations

from .profile import TemplateIdentity, TransformContext, TransformTrace
from .science_europe_balanced_rules import (
    rewrite_science_europe_balanced_source_fragments,
)
from .science_europe_unbalanced_rules import (
    rewrite_science_europe_unbalanced_html_fragments,
)

PROFILE_ID = "science-europe"

__all__ = [
    "PROFILE_ID",
    "is_science_europe_template",
    "rewrite_science_europe_source",
    "rewrite_science_europe_balanced_source_fragments",
    "rewrite_science_europe_unbalanced_html_fragments",
]


[docs] def is_science_europe_template(identity: TemplateIdentity) -> bool: """Return whether the local profile owns this template.""" return identity.organization_id == "dsw" and identity.template_id == "science-europe"
[docs] def rewrite_science_europe_source( source_text: str, *, context: TransformContext, trace: TransformTrace, phase: str, ) -> str: """Apply the named Science Europe rewrite phase with trace metadata.""" if phase == "balanced": return rewrite_science_europe_balanced_source_fragments( source_text, source_file=context.relative_path, trace=trace, ) if phase == "unbalanced": return rewrite_science_europe_unbalanced_html_fragments( source_text, apply_localization_rewrites=context.apply_local_patches, source_file=context.relative_path, trace=trace, ) raise ValueError(f"Unknown Science Europe rewrite phase: {phase}")