54 lines
2.1 KiB
Plaintext
54 lines
2.1 KiB
Plaintext
@model WritingIntentDisplayViewModel
|
|
@{
|
|
var scene = Model.Context?.Scene;
|
|
var workflow = Model.ChapterWorkflow;
|
|
var chapter = workflow?.Chapter ?? Model.Context?.Chapter;
|
|
var goal = workflow?.Goal;
|
|
static string TextOr(string? value, string fallback) => string.IsNullOrWhiteSpace(value) ? fallback : value.Trim();
|
|
}
|
|
|
|
<div class="writing-context-grid writing-context-grid--overview">
|
|
<article class="writing-context-card writing-context-card--hero">
|
|
<p class="eyebrow">Chapter Plan</p>
|
|
<h3>Chapter @chapter?.ChapterNumber:g: @chapter?.ChapterTitle</h3>
|
|
<p>@TextOr(chapter?.Summary, "No chapter summary has been written yet.")</p>
|
|
<dl class="writing-context-facts">
|
|
<dt>Purpose</dt><dd>@TextOr(chapter?.ChapterPurposeName, "No chapter purpose selected.")</dd>
|
|
<dt>Goal</dt><dd>@TextOr(goal?.GoalSummary, "No chapter goal summary yet.")</dd>
|
|
</dl>
|
|
</article>
|
|
|
|
<article class="writing-context-card">
|
|
<p class="eyebrow">Current Scene</p>
|
|
@if (scene is null)
|
|
{
|
|
<p>No current scene. Chapter intent is shown until Word reports a scene.</p>
|
|
}
|
|
else
|
|
{
|
|
<h3>Scene @scene.SceneNumber:g: @scene.SceneTitle</h3>
|
|
<p>@TextOr(scene.Summary, "No scene summary has been written yet.")</p>
|
|
}
|
|
</article>
|
|
|
|
<article class="writing-context-card">
|
|
<p class="eyebrow">Scene Purpose</p>
|
|
<p>@TextOr(scene?.ScenePurposeNotes, "No scene-specific purpose notes yet.")</p>
|
|
</article>
|
|
|
|
<article class="writing-context-card">
|
|
<p class="eyebrow">Expected Outcome</p>
|
|
<p>@TextOr(scene?.SceneOutcomeNotes, "No expected outcome has been captured for this scene.")</p>
|
|
</article>
|
|
|
|
<article class="writing-context-card">
|
|
<p class="eyebrow">Emotional Goal</p>
|
|
<p>@TextOr(goal?.EmotionalGoal, "No emotional goal recorded for this chapter.")</p>
|
|
</article>
|
|
|
|
<article class="writing-context-card">
|
|
<p class="eyebrow">Reader Takeaway</p>
|
|
<p>@TextOr(goal?.ReaderTakeaway, "No reader takeaway recorded for this chapter.")</p>
|
|
</article>
|
|
</div>
|