@model WritingContextDisplayViewModel
@{
var scene = Model.Context!.Scene!;
static string TextOr(string? value, string fallback) => string.IsNullOrWhiteSpace(value) ? fallback : value.Trim();
}
Threads
@if (!scene.ThreadEvents.Any())
{
No story thread events recorded.
}
else
{
@foreach (var item in scene.ThreadEvents)
{
- @item.PlotLineName / @item.ThreadTitle @TextOr(item.EventTitle, item.EventTypeName)
}
}
Knowledge
@if (!scene.CharacterKnowledge.Any())
{
No knowledge changes recorded.
}
else
{
@foreach (var item in scene.CharacterKnowledge)
{
- @item.CharacterName @item.KnowledgeStateName: @TextOr(item.Description, item.AssetName ?? item.ThreadTitle ?? "Knowledge change recorded.")
}
}
Dependencies
@if (!scene.DependenciesThisSceneNeeds.Any() && !scene.DependenciesNeedingThisScene.Any())
{
No dependencies recorded.
}
else
{
@foreach (var item in scene.DependenciesThisSceneNeeds.Concat(scene.DependenciesNeedingThisScene).Take(8))
{
- @item.SceneDependencyTypeName @TextOr(item.Description, "Scene dependency recorded.")
}
}
Assets
@if (!scene.AssetEvents.Any() && !scene.AssetCustodyEvents.Any())
{
No important asset events recorded.
}
else
{
@foreach (var item in scene.AssetEvents.Take(6))
{
- @item.AssetName @TextOr(item.EventTitle, item.AssetEventTypeName)
}
@foreach (var item in scene.AssetCustodyEvents.Take(6))
{
- @item.AssetName @TextOr(item.CustodianSummary, item.CustodyEventTypeName)
}
}
Continuity
@if (!scene.Warnings.Any() && !scene.AgeContinuityWarnings.Any())
{
No continuity warnings.
}
else
{
@foreach (var warning in scene.Warnings.Concat(scene.AgeContinuityWarnings))
{
- @warning.SeverityName @warning.Message
}
}