< Summary

Information
Class: Pomodoro.Web.Components.KeyboardHelpModal
Assembly: Pomodoro.Web
File(s): /home/runner/work/Pomodoro/Pomodoro/src/Pomodoro.Web/Components/KeyboardHelpModal.razor
Line coverage
100%
Covered lines: 22
Uncovered lines: 0
Coverable lines: 22
Total lines: 71
Line coverage: 100%
Branch coverage
100%
Covered branches: 2
Total branches: 2
Branch coverage: 100%
Method coverage

Feature is only available for sponsors

Upgrade to PRO version

Metrics

MethodBranch coverage Crap Score Cyclomatic complexity Line coverage
BuildRenderTree(...)100%22100%
get_IsVisible()100%11100%
get_OnClose()100%11100%
Close()100%11100%

File(s)

/home/runner/work/Pomodoro/Pomodoro/src/Pomodoro.Web/Components/KeyboardHelpModal.razor

#LineLine coverage
 1@using Pomodoro.Web.Models
 2
 3<div class="keyboard-help-modal @(IsVisible ? "visible" : "")">
 4    <div class="modal-backdrop" @onclick="Close"></div>
 5    <div class="modal-content">
 6        <div class="modal-header">
 3377            <h3>@Constants.KeyboardHelp.Title</h3>
 3378            <button class="modal-close" @onclick="Close" aria-label="@Constants.KeyboardHelp.CloseTooltip">@Constants.Ke
 9        </div>
 10
 11        <div class="modal-body">
 12            <div class="shortcut-section">
 33713                <h4>@Constants.KeyboardHelp.TimerSection</h4>
 14                <div class="shortcut-item">
 33715                    <kbd>@Constants.KeyboardShortcuts.PlayPauseKey</kbd>
 33716                    <span>@Constants.KeyboardShortcuts.PlayPauseDescription</span>
 17                </div>
 18                <div class="shortcut-item">
 33719                    <kbd>@Constants.KeyboardShortcuts.ResetKey</kbd>
 33720                    <span>@Constants.KeyboardShortcuts.ResetDescription</span>
 21                </div>
 22            </div>
 23
 24            <div class="shortcut-section">
 33725                <h4>@Constants.KeyboardHelp.SessionSection</h4>
 26                <div class="shortcut-item">
 33727                    <kbd>@Constants.KeyboardShortcuts.PomodoroKey</kbd>
 33728                    <span>@Constants.KeyboardShortcuts.PomodoroDescription</span>
 29                </div>
 30                <div class="shortcut-item">
 33731                    <kbd>@Constants.KeyboardShortcuts.ShortBreakKey</kbd>
 33732                    <span>@Constants.KeyboardShortcuts.ShortBreakDescription</span>
 33                </div>
 34                <div class="shortcut-item">
 33735                    <kbd>@Constants.KeyboardShortcuts.LongBreakKey</kbd>
 33736                    <span>@Constants.KeyboardShortcuts.LongBreakDescription</span>
 37                </div>
 38            </div>
 39
 40            <div class="shortcut-section">
 33741                <h4>@Constants.KeyboardHelp.OtherSection</h4>
 42                <div class="shortcut-item">
 33743                    <kbd>@Constants.KeyboardShortcuts.HelpKey</kbd>
 33744                    <span>@Constants.KeyboardShortcuts.HelpDescription</span>
 45                </div>
 46            </div>
 47        </div>
 48    </div>
 49</div>
 50
 51@code {
 52    /// <summary>
 53    /// Controls the visibility of the keyboard help modal
 54    /// </summary>
 55    [Parameter]
 67256    public bool IsVisible { get; set; }
 57
 58    /// <summary>
 59    /// Event callback when the modal is closed
 60    /// </summary>
 61    [Parameter]
 33062    public EventCallback OnClose { get; set; }
 63
 64    /// <summary>
 65    /// Closes the modal by invoking the OnClose callback
 66    /// </summary>
 67    private async Task Close()
 368    {
 369        await OnClose.InvokeAsync();
 370    }
 71}