< Summary

Information
Class: Pomodoro.Web.Components.Settings.PreferenceSettings
Assembly: Pomodoro.Web
File(s): /home/runner/work/Pomodoro/Pomodoro/src/Pomodoro.Web/Components/Settings/PreferenceSettings.razor
Line coverage
100%
Covered lines: 3
Uncovered lines: 0
Coverable lines: 3
Total lines: 41
Line coverage: 100%
Branch coverage
N/A
Covered branches: 0
Total branches: 0
Branch coverage: N/A
Method coverage

Feature is only available for sponsors

Upgrade to PRO version

Metrics

MethodBranch coverage Crap Score Cyclomatic complexity Line coverage
get_Settings()100%11100%
get_OnChanged()100%11100%
NotifyChanged()100%11100%

File(s)

/home/runner/work/Pomodoro/Pomodoro/src/Pomodoro.Web/Components/Settings/PreferenceSettings.razor

#LineLine coverage
 1<div class="settings-section">
 2    <h2>Preferences</h2>
 3
 4    <div class="setting-item setting-toggle">
 5        <div class="setting-label">
 6            <span class="setting-icon">🔊</span>
 7            <span class="setting-name">Sound</span>
 8        </div>
 9        <div class="toggle-control">
 10            <input type="checkbox" id="soundToggle" @bind="Settings.SoundEnabled" @bind:after="NotifyChanged" class="tog
 11            <label for="soundToggle" class="toggle-label">
 12                <span class="toggle-inner"></span>
 13                <span class="toggle-switch"></span>
 14            </label>
 15        </div>
 16    </div>
 17
 18    <div class="setting-item setting-toggle">
 19        <div class="setting-label">
 20            <span class="setting-icon">🔔</span>
 21            <span class="setting-name">Notifications</span>
 22        </div>
 23        <div class="toggle-control">
 24            <input type="checkbox" id="notifToggle" @bind="Settings.NotificationsEnabled" @bind:after="NotifyChanged" cl
 25            <label for="notifToggle" class="toggle-label">
 26                <span class="toggle-inner"></span>
 27                <span class="toggle-switch"></span>
 28            </label>
 29        </div>
 30    </div>
 31</div>
 32
 33@code {
 34    [Parameter]
 138735    public TimerSettings Settings { get; set; } = default!;
 36
 37    [Parameter]
 17838    public EventCallback OnChanged { get; set; }
 39
 240    private async Task NotifyChanged() => await OnChanged.InvokeAsync();
 41}