React Advanced Odontogram - v2.2.1
    Preparing search index...

    Type Alias OdontogramSummary

    Structured, already-localized textual summary of the whole odontogram.

    type OdontogramSummary = {
        implants: { heading: string; text: string } | null;
        individualNotes: { heading: string; items: string[] } | null;
        missingList: string | null;
        overview: string;
        periodontalText: string;
        periodontalTitle: string;
        permanentList: string | null;
        plannedChanges: PlanChange[];
        sections: OdontogramSummarySection[];
    }
    Index

    Properties

    implants: { heading: string; text: string } | null

    Implants heading + list — only present when at least one implant exists.

    individualNotes: { heading: string; items: string[] } | null

    2.2.1: per-tooth free-text notes — one "<tooth>: <note>" line per tooth that carries a note (gated on the notes-enabled setting, like the tooltip). null when no tooth has a note, so the panel/PDF omit the section entirely.

    missingList: string | null
    overview: string
    periodontalText: string
    periodontalTitle: string
    permanentList: string | null
    plannedChanges: PlanChange[]

    R2-B Task 2: the status->plan diff (see getPlanChanges), verbatim. [] whenever the plan chart hasn't been initialized or plan === status — a distinct field, not a section, since it's a diff rather than a status list. The "What changes" box in App.tsx renders from this field only when it's non-empty.