mirror of
https://github.com/btcpayserver/btcpayserver.git
synced 2025-02-23 06:35:13 +01:00
* Truncate Center Component: Fix Vue rendering * Simplify the TruncateCenter component --------- Co-authored-by: nicolas.dorier <nicolas.dorier@gmail.com>
48 lines
2 KiB
Text
48 lines
2 KiB
Text
@model BTCPayServer.Components.TruncateCenter.TruncateCenterViewModel
|
|
@{
|
|
var classes = string.IsNullOrEmpty(Model.Classes) ? string.Empty : Model.Classes.Trim();
|
|
var isTruncated = !string.IsNullOrEmpty(Model.Start) && !string.IsNullOrEmpty(Model.End);
|
|
@if (Model.Copy) classes += " truncate-center--copy";
|
|
@if (Model.Elastic) classes += " truncate-center--elastic";
|
|
var prefix = Model.IsVue ? ":" : "";
|
|
}
|
|
<span class="truncate-center @classes" id="@Model.Id" data-text="@Model.Text">
|
|
@if (Model.IsVue)
|
|
{
|
|
<span class="truncate-center-truncated" data-bs-toggle="tooltip" :title="@Model.Text">
|
|
@if (Model.Elastic)
|
|
{
|
|
<span class="truncate-center-start" v-text="@Model.Text"></span>
|
|
}
|
|
else
|
|
{
|
|
<span class="truncate-center-start" v-text="@(Model.Text).length > 2 * @(Model.Padding) ? (@(Model.Text).slice(0, @(Model.Padding)) + '…') : @(Model.Text)"></span>
|
|
}
|
|
<span class="truncate-center-end" v-text="@(Model.Text).slice(-@(Model.Padding))" v-if="@(Model.Text).length > 2 * @(Model.Padding)"></span>
|
|
</span>
|
|
<span class="truncate-center-text" v-text="@Model.Text"></span>
|
|
}
|
|
else
|
|
{
|
|
<span class="truncate-center-truncated" @(isTruncated ? $"data-bs-toggle=tooltip title={Model.Text}" : "")>
|
|
<span class="truncate-center-start">@(Model.Elastic || !isTruncated ? Model.Text : $"{Model.Start}…")</span>
|
|
@if (isTruncated)
|
|
{
|
|
<span class="truncate-center-end">@Model.End</span>
|
|
}
|
|
</span>
|
|
<span class="truncate-center-text">@Model.Text</span>
|
|
}
|
|
@if (Model.Copy)
|
|
{
|
|
<button type="button" class="btn btn-link p-0" @(prefix)data-clipboard="@Model.Text">
|
|
<vc:icon symbol="actions-copy" />
|
|
</button>
|
|
}
|
|
@if (!string.IsNullOrEmpty(Model.Link))
|
|
{
|
|
<a @(prefix)href="@Model.Link" rel="noreferrer noopener" target="_blank">
|
|
<vc:icon symbol="info" />
|
|
</a>
|
|
}
|
|
</span>
|