< Summary

Information
Class: UIBlazor.Components.UsageIndicators
Assembly: UIBlazor
File(s): /home/runner/work/InvAit/InvAit/UIBlazor/Components/UsageIndicators.razor
Tag: 14_22728831704
Line coverage
0%
Covered lines: 0
Uncovered lines: 11
Coverable lines: 11
Total lines: 34
Line coverage: 0%
Branch coverage
0%
Covered branches: 0
Total branches: 12
Branch coverage: 0%
Method coverage

Feature is only available for sponsors

Upgrade to PRO version

Metrics

MethodBranch coverage Crap Score Cyclomatic complexity Line coverage
BuildRenderTree(...)0%2040%
get_Messages()100%210%
get_MessageProgress()0%2040%
get_TokenProgress()0%2040%

File(s)

/home/runner/work/InvAit/InvAit/UIBlazor/Components/UsageIndicators.razor

#LineLine coverage
 1@inject ChatService ChatService
 2
 3<div class="usage-indicators">
 4    <div class="usage-item" title="@SharedResource.Messages: @Messages.Count / @ChatService.Options.MaxMessages">
 5        <div class="usage-label">
 06            <span>@SharedResource.Messages</span>
 07            <span>@Messages.Count / @ChatService.Options.MaxMessages</span>
 8        </div>
 9        <div class="usage-bar-container">
 10            <div class="usage-bar" style="width: @(MessageProgress)%;"></div>
 11        </div>
 12    </div>
 13    <div class="usage-item" title="@SharedResource.Tokens: @ChatService.Session?.TotalTokens / @ChatService.Options.MaxT
 14        <div class="usage-label">
 015            <span>@SharedResource.Tokens</span>
 016            <span>@(ChatService.Session?.TotalTokens ?? 0) / @ChatService.Options.MaxTokens</span>
 17        </div>
 18        <div class="usage-bar-container">
 19            <div class="usage-bar" style="width: @(TokenProgress)%; background: var(--rz-secondary);"></div>
 20        </div>
 21    </div>
 22</div>
 23
 24@code {
 025    [Parameter] public List<VisualChatMessage> Messages { get; set; } = [];
 26
 027    private int MessageProgress => ChatService.Session != null && ChatService.Options.MaxMessages > 0
 028        ? Math.Min(100, Messages.Count * 100 / ChatService.Options.MaxMessages)
 029        : 0;
 30
 031    private int TokenProgress => ChatService.Session != null && ChatService.Options.MaxTokens > 0
 032        ? Math.Min(100, ChatService.Session.TotalTokens * 100 / ChatService.Options.MaxTokens)
 033        : 0;
 34}