Foundry-free view-model for the Trauma item sheet's properties tab (#939): which fields each sub-type displays and edits. The sheet (TraumaSheet._preparePropertiesContext) turns these flags into rendered controls and supplies the Foundry-facing pieces (schema fields, the category choices map, the computed next-test date). contractDate is edited for every sub-type, so it has no flag.

interface TraumaSheetFields {
    nextTestLabelKey?: string;
    showAspect: boolean;
    showBloodLoss: boolean;
    showBodyLocation: boolean;
    showCategory: boolean;
    showCourseDuration: boolean;
    showHealDuration: boolean;
    showHealingRate: boolean;
    showInjuryFlags: boolean;
    showLevel: boolean;
    showNotes: boolean;
    showTreatmentDate: boolean;
}

Properties

nextTestLabelKey?: string

Localization key for the view-only "next test" label, or undefined for sub-types with no recurring recovery/heal/course test. Pairs with the computed TraumaLogic.nextRecoveryTestAt date the sheet supplies.

showAspect: boolean

Show the impact aspect (Injury only).

showBloodLoss: boolean

Show the blood-loss interval (Injury only).

showBodyLocation: boolean

Show the body location code (Injury / Infection).

showCategory: boolean

Show the sub-category select (Fatigue / PsychCond / PhysCond).

showCourseDuration: boolean

Show the course duration formula + base (Shock / Coma).

showHealDuration: boolean

Show the healing-check duration formula + base (Injury / Infection).

showHealingRate: boolean

Show the healing rate (Injury / Infection / Shock / Coma).

showInjuryFlags: boolean

Show the infectable / permanent-impairment flags (Injury only).

showLevel: boolean

Show the graduated level (FL / PSL / PSY / ASL / Sev / Fear-Morale).

showNotes: boolean

Show the one-line notes field (Fatigue / Fear / Morale / PhysCond).

showTreatmentDate: boolean

Show the treatment date (Injury / Infection).