mirror of
https://github.com/btcpayserver/btcpayserver.git
synced 2025-02-20 13:34:37 +01:00
Upgrade Bootstrap to v5.2.3; Design System improvements (#4380)
This commit is contained in:
parent
4039e74a82
commit
8894d14130
29 changed files with 2160 additions and 1776 deletions
|
@ -92,7 +92,7 @@
|
|||
<div class="form-group">
|
||||
<label asp-for="TargetCurrency" class="form-label"></label>
|
||||
<input asp-for="TargetCurrency" class="form-control w-auto" currency-selection />
|
||||
<small class="d-inline-block form-text text-muted">Uses the store's default currency (@Model.StoreDefaultCurrency) if empty.</small>
|
||||
<div class="form-text">Uses the store's default currency (@Model.StoreDefaultCurrency) if empty.</div>
|
||||
<span asp-validation-for="TargetCurrency" class="text-danger"></span>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
@ -47,9 +47,7 @@
|
|||
<div class="form-group">
|
||||
<label asp-for="Settings.Login" class="form-label"></label>
|
||||
<input asp-for="Settings.Login" class="form-control"/>
|
||||
<small class="form-text text-muted">
|
||||
For many email providers (like Gmail) your login is your email address.
|
||||
</small>
|
||||
<div class="form-text">For many email providers (like Gmail) your login is your email address.</div>
|
||||
<span asp-validation-for="Settings.Login" class="text-danger"></span>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
|
|
|
@ -27,9 +27,7 @@
|
|||
}
|
||||
@if (!string.IsNullOrEmpty(Model.HelpText))
|
||||
{
|
||||
<small id="@("HelpText" + Model.Name)" class="form-text text-muted">
|
||||
@Model.HelpText
|
||||
</small>
|
||||
<div id="@("HelpText" + Model.Name)" class="form-text">@Model.HelpText</div>
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -305,9 +305,7 @@
|
|||
v-model="srvModel.serverIpn" v-on:change="inputChanges"
|
||||
v-validate="'url'" :class="{'is-invalid': errors.has('serverIpn') }">
|
||||
<small class="text-danger">{{ errors.first('serverIpn') }}</small>
|
||||
<p class="form-text text-muted">
|
||||
The URL to post purchase data.
|
||||
</p>
|
||||
<div class="form-text">The URL to post purchase data.</div>
|
||||
</div>
|
||||
<div class="form-group" v-if="!srvModel.appIdEndpoint">
|
||||
<label class="form-label" for="email-notifications">Email Notifications</label>
|
||||
|
@ -316,9 +314,7 @@
|
|||
v-model="srvModel.notifyEmail" v-on:change="inputChanges"
|
||||
v-validate="'email'" :class="{'is-invalid': errors.has('notifyEmail') }">
|
||||
<small class="text-danger">{{ errors.first('notifyEmail') }}</small>
|
||||
<p class="form-text text-muted">
|
||||
Receive email notification updates.
|
||||
</p>
|
||||
<div class="form-text">Receive email notification updates.</div>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label class="form-label" for="browser-redirect">Browser Redirect</label>
|
||||
|
@ -326,9 +322,7 @@
|
|||
v-model="srvModel.browserRedirect" v-on:change="inputChanges"
|
||||
v-validate="'url'" :class="{'is-invalid': errors.has('browserRedirect') }">
|
||||
<small class="text-danger">{{ errors.first('browserRedirect') }}</small>
|
||||
<p class="form-text text-muted">
|
||||
Where to redirect the customer after payment is complete.
|
||||
</p>
|
||||
<div class="form-text">Where to redirect the customer after payment is complete</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
@ -40,7 +40,7 @@
|
|||
<div class="form-group">
|
||||
<label asp-for="Currency" class="form-label"></label>
|
||||
<input asp-for="Currency" class="form-control w-auto" currency-selection />
|
||||
<small class="d-inline-block form-text text-muted">Uses the store's default currency (@Model.StoreDefaultCurrency) if empty.</small>
|
||||
<div class="form-text">Uses the store's default currency (@Model.StoreDefaultCurrency) if empty.</div>
|
||||
<span asp-validation-for="Currency" class="text-danger"></span>
|
||||
</div>
|
||||
</div>
|
||||
|
@ -75,7 +75,7 @@
|
|||
<label asp-for="DefaultView" class="form-label" data-required></label>
|
||||
<select asp-for="DefaultView" asp-items="@Html.GetEnumSelectList<PosViewType>()" class="form-select" required></select>
|
||||
<span asp-validation-for="DefaultView" class="text-danger"></span>
|
||||
<p class="form-text text-muted">Choose the point of sale style for your customers.</p>
|
||||
<div class="form-text">Choose the point of sale style for your customers.</div>
|
||||
</div>
|
||||
<div class="form-group" id="button-price-text">
|
||||
<label asp-for="ButtonText" class="form-label" data-required></label>
|
||||
|
|
|
@ -93,16 +93,12 @@
|
|||
<div class="form-group">
|
||||
<label class="form-label">Inventory</label>
|
||||
<input type="number" inputmode="numeric" min="0" step="1" class="form-control mb-2" v-model="editingItem.inventory" ref="txtInventory" />
|
||||
<p class="form-text text-muted">
|
||||
Leave blank to not use this feature.
|
||||
</p>
|
||||
<div class="form-text">Leave blank to not use this feature.</div>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label class="form-label">ID</label>
|
||||
<input type="text" required pattern="[^\*#]+" class="form-control mb-2" v-model="editingItem.id" ref="txtId" />
|
||||
<p class="form-text text-muted">
|
||||
Leave blank to generate ID from title.
|
||||
</p>
|
||||
<div class="form-text">Leave blank to generate ID from title.</div>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label class="form-label">Buy Button Text</label>
|
||||
|
|
|
@ -364,7 +364,7 @@
|
|||
</tbody>
|
||||
</table>
|
||||
-->
|
||||
<small class="form-text text-muted">Final results may vary due to trading fees and slippage.</small>
|
||||
<div class="form-text">Final results may vary due to trading fees and slippage.</div>
|
||||
</div>
|
||||
<div v-if="trade.results !== null">
|
||||
<p class="alert alert-success">Successfully traded {{ trade.results.fromAsset}} into {{ trade.results.toAsset}}.</p>
|
||||
|
|
|
@ -135,9 +135,7 @@
|
|||
<label asp-for="NotificationEmail" class="form-label"></label>
|
||||
<input asp-for="NotificationEmail" class="form-control" />
|
||||
<span asp-validation-for="NotificationEmail" class="text-danger"></span>
|
||||
<p id="InvoiceEmailHelpBlock" class="form-text text-muted">
|
||||
Receive updates for this invoice.
|
||||
</p>
|
||||
<div id="InvoiceEmailHelpBlock" class="form-text">Receive updates for this invoice.</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
@ -186,15 +186,15 @@
|
|||
<div class="dropdown-menu" aria-labelledby="markStatusDropdownMenuButton">
|
||||
@if (Model.CanMarkInvalid)
|
||||
{
|
||||
<a class="dropdown-item changeInvoiceState" href="#" data-id="@Model.Id" data-status="invalid" data-change-invoice-status-button>
|
||||
Mark as invalid <span class="fa fa-times"></span>
|
||||
</a>
|
||||
<button type="button" class="dropdown-item lh-base changeInvoiceState" data-id="@Model.Id" data-status="invalid" data-change-invoice-status-button>
|
||||
Mark as invalid
|
||||
</button>
|
||||
}
|
||||
@if (Model.CanMarkSettled)
|
||||
{
|
||||
<a class="dropdown-item changeInvoiceState" href="#" data-id="@Model.Id" data-status="settled" data-change-invoice-status-button>
|
||||
Mark as settled <span class="fa fa-check-circle"></span>
|
||||
</a>
|
||||
<button type="button" class="dropdown-item lh-base changeInvoiceState" href="#" data-id="@Model.Id" data-status="settled" data-change-invoice-status-button>
|
||||
Mark as settled
|
||||
</button>
|
||||
}
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
@ -41,7 +41,7 @@
|
|||
pavpill.replaceWith(statusHtml);
|
||||
})
|
||||
.fail(function (data) {
|
||||
pavpill.html(originalHtml.replace("dropdown-menu pull-right show", "dropdown-menu pull-right"));
|
||||
pavpill.html(originalHtml.replace("dropdown-menu show", "dropdown-menu"));
|
||||
alert("Invoice state update failed");
|
||||
});
|
||||
})
|
||||
|
@ -325,16 +325,16 @@
|
|||
<span class="dropdown-toggle changeInvoiceStateToggle" data-bs-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
|
||||
@invoice.Status.ToString()
|
||||
</span>
|
||||
<div class="dropdown-menu pull-right">
|
||||
<div class="dropdown-menu">
|
||||
@if (invoice.CanMarkInvalid)
|
||||
{
|
||||
<button class="dropdown-item cursorPointer changeInvoiceState" data-invoice-id="@invoice.InvoiceId" data-new-state="invalid">
|
||||
<button type="button" class="dropdown-item lh-base changeInvoiceState" data-invoice-id="@invoice.InvoiceId" data-new-state="invalid">
|
||||
Mark as invalid
|
||||
</button>
|
||||
}
|
||||
@if (invoice.CanMarkSettled)
|
||||
{
|
||||
<button class="dropdown-item cursorPointer changeInvoiceState" data-invoice-id="@invoice.InvoiceId" data-new-state="settled">
|
||||
<button type="button" class="dropdown-item lh-base changeInvoiceState" data-invoice-id="@invoice.InvoiceId" data-new-state="settled">
|
||||
Mark as settled
|
||||
</button>
|
||||
}
|
||||
|
|
|
@ -50,21 +50,21 @@
|
|||
<div class="form-check">
|
||||
<input id="RateThenOption" asp-for="SelectedRefundOption" type="radio" value="RateThen" class="form-check-input"/>
|
||||
<label for="RateThenOption" class="form-check-label">@Model.RateThenText</label>
|
||||
<div class="form-text text-muted">The crypto currency price, at the rate the invoice got paid.</div>
|
||||
<div class="form-text">The crypto currency price, at the rate the invoice got paid.</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<div class="form-check">
|
||||
<input id="CurrentRateOption" asp-for="SelectedRefundOption" type="radio" value="CurrentRate" class="form-check-input"/>
|
||||
<label for="CurrentRateOption" class="form-check-label">@Model.CurrentRateText</label>
|
||||
<div class="form-text text-muted">The crypto currency price, at the current rate.</div>
|
||||
<div class="form-text">The crypto currency price, at the current rate.</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<div class="form-check">
|
||||
<input id="FiatOption" asp-for="SelectedRefundOption" type="radio" value="Fiat" class="form-check-input"/>
|
||||
<label for="FiatOption" class="form-check-label">@Model.FiatText</label>
|
||||
<div class="form-text text-muted">The invoice currency, at the rate when the refund will be sent.</div>
|
||||
<div class="form-text">The invoice currency, at the rate when the refund will be sent.</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
@ -72,7 +72,7 @@
|
|||
<div class="form-check">
|
||||
<input id="CustomOption" asp-for="SelectedRefundOption" type="radio" value="Custom" class="form-check-input"/>
|
||||
<label for="CustomOption" class="form-check-label">Custom amount</label>
|
||||
<div class="form-text text-muted">The specified amount with the specified currency, at the rate when the refund will be sent.</div>
|
||||
<div class="form-text">The specified amount with the specified currency, at the rate when the refund will be sent.</div>
|
||||
<div class="form-group pt-2">
|
||||
<label asp-for="CustomAmount" class="form-label"></label>
|
||||
<div class="input-group">
|
||||
|
|
|
@ -128,7 +128,7 @@
|
|||
<div>
|
||||
<label for="@Model.PermissionValues[i].Permission" class="form-check-label">@Model.PermissionValues[i].Title</label>
|
||||
</div>
|
||||
<div class="form-text text-muted">@Model.PermissionValues[i].Description</div>
|
||||
<div class="form-text">@Model.PermissionValues[i].Description</div>
|
||||
<span asp-validation-for="PermissionValues[i].Value" class="text-danger"></span>
|
||||
@if (Model.PermissionValues[i].Forbidden)
|
||||
{
|
||||
|
|
|
@ -79,9 +79,7 @@
|
|||
<label asp-for="Email" class="form-label"></label>
|
||||
<input type="email" asp-for="Email" placeholder="Firstname Lastname <email@example.com>" class="form-control" />
|
||||
<span asp-validation-for="Email" class="text-danger"></span>
|
||||
<p id="PaymentRequestEmailHelpBlock" class="form-text text-muted">
|
||||
Receive updates for this payment request.
|
||||
</p>
|
||||
<div id="PaymentRequestEmailHelpBlock" class="form-text">Receive updates for this payment request.</div>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label asp-for="FormId" class="form-label"></label>
|
||||
|
|
|
@ -25,27 +25,27 @@
|
|||
<div class="form-group">
|
||||
<label asp-for="Settings.ServiceUrl" class="form-label"></label>
|
||||
<input id="ServiceUrl" asp-for="Settings.ServiceUrl" class="form-control" placeholder="Url"/>
|
||||
<p class="form-text text-muted">
|
||||
<div class="form-text">
|
||||
Well-known Dynamic DNS providers are:
|
||||
@for (int i = 0; i < Model.KnownServices.Length; i++)
|
||||
@for (var i = 0; i < Model.KnownServices.Length; i++)
|
||||
{
|
||||
<a href="#" class="serviceSettings" data-url="@Model.KnownServices[i].Url">@Model.KnownServices[i].Name</a>
|
||||
<span>@(i == Model.KnownServices.Length - 1 ? "" : ",")</span>
|
||||
}
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label asp-for="Settings.Hostname" class="form-label"></label>
|
||||
@if (Model.Modify)
|
||||
{
|
||||
<input asp-for="Settings.Hostname" class="form-control" readonly placeholder="Hostname"/>
|
||||
<p class="form-text text-muted">
|
||||
<div class="form-text">
|
||||
<span>The DNS record has been refreshed: </span>
|
||||
@if (Model.LastUpdated != null)
|
||||
{
|
||||
<span>@Model.LastUpdated</span>
|
||||
}
|
||||
</p>
|
||||
</div>
|
||||
}
|
||||
else
|
||||
{
|
||||
|
|
|
@ -58,7 +58,7 @@
|
|||
else
|
||||
{
|
||||
<input asp-for="LogoFile" type="file" class="form-control" disabled>
|
||||
<p class="form-text text-muted">In order to upload a logo, a <a asp-controller="UIServer" asp-action="Files">file storage</a> must be configured.</p>
|
||||
<div class="form-text">In order to upload a logo, a <a asp-controller="UIServer" asp-action="Files">file storage</a> must be configured.</div>
|
||||
}
|
||||
</div>
|
||||
|
||||
|
|
|
@ -70,7 +70,7 @@
|
|||
<span class="badge bg-warning ms-2">Experimental</span>
|
||||
</label>
|
||||
<span asp-validation-for="UseNewCheckout" class="text-danger"></span>
|
||||
<div class="text-muted">
|
||||
<div class="form-text">
|
||||
Since v1.7.0 a new version of the checkout is available. Note: For now, the new version is English-only.<br/>
|
||||
We are still collecting <a href="https://github.com/btcpayserver/btcpayserver/discussions/4308" target="_blank" rel="noreferrer noopener">feedback</a> and offer this as an opt-in feature.
|
||||
</div>
|
||||
|
@ -96,7 +96,7 @@
|
|||
<div class="form-check">
|
||||
<input asp-for="AutoDetectLanguage" type="checkbox" class="form-check-input"/>
|
||||
<label asp-for="AutoDetectLanguage" class="form-check-label"></label>
|
||||
<p class="text-muted">Detects the language of the customer's browser with 99.9% accuracy.</p>
|
||||
<div class="form-text">Detects the language of the customer's browser with 99.9% accuracy.</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
|
@ -118,12 +118,12 @@
|
|||
</a>
|
||||
<input asp-for="CustomCSS" class="form-control" />
|
||||
<span asp-validation-for="CustomCSS" class="text-danger"></span>
|
||||
<p class="form-text text-muted">
|
||||
<div class="form-text">
|
||||
Bundled Themes:
|
||||
<a href="#" class="setTheme" data-theme="default">Default</a> |
|
||||
<a href="#" class="setTheme" data-theme="dark">Dark</a> |
|
||||
<a href="#" class="setTheme" data-theme="legacy">Legacy</a>
|
||||
</p>
|
||||
</div>
|
||||
@await Component.InvokeAsync("UiExtensionPoint", new { location = "invoice-checkout-theme-options", model = Model })
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
@ -24,9 +24,7 @@
|
|||
<label asp-for="PublicKey" class="form-label"></label>
|
||||
<input asp-for="PublicKey" class="form-control" />
|
||||
<span asp-validation-for="PublicKey" class="text-danger"></span>
|
||||
<p class="form-text text-muted">
|
||||
Keep empty for server-initiated pairing.
|
||||
</p>
|
||||
<div class="form-text">Keep empty for server-initiated pairing.</div>
|
||||
</div>
|
||||
}
|
||||
@if (ViewBag.ShowStores)
|
||||
|
|
|
@ -54,15 +54,15 @@
|
|||
}
|
||||
</div>
|
||||
<span asp-validation-for="LogoFile" class="text-danger"></span>
|
||||
<p class="form-text text-muted">
|
||||
<div class="form-text">
|
||||
Please upload an image with square dimension, as it will be displayed in 1:1 format and circular.
|
||||
Size should be around 100✕100px.
|
||||
</p>
|
||||
</div>
|
||||
}
|
||||
else
|
||||
{
|
||||
<input asp-for="LogoFile" type="file" class="form-control" disabled>
|
||||
<p class="form-text text-muted">In order to upload a logo, a <a asp-controller="UIServer" asp-action="Files">file storage</a> must be configured.</p>
|
||||
<div class="form-text">In order to upload a logo, a <a asp-controller="UIServer" asp-action="Files">file storage</a> must be configured.</div>
|
||||
}
|
||||
</div>
|
||||
<div class="form-group">
|
||||
|
|
|
@ -75,10 +75,10 @@
|
|||
<label asp-for="LightningDescriptionTemplate" class="form-label"></label>
|
||||
<input asp-for="LightningDescriptionTemplate" class="form-control"/>
|
||||
<span asp-validation-for="LightningDescriptionTemplate" class="text-danger"></span>
|
||||
<p class="form-text text-muted">
|
||||
<div class="form-text">
|
||||
Available placeholders:
|
||||
<code>{StoreName} {ItemDescription} {OrderId}</code>
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<h3 class="mt-5 mb-3" id="ln-url">LNURL</h3>
|
||||
|
@ -94,8 +94,7 @@
|
|||
<div class="">
|
||||
<label asp-for="LNURLBech32Mode" class="form-label mb-0 me-1"></label>
|
||||
<span asp-validation-for="LNURLBech32Mode" class="text-danger"></span>
|
||||
|
||||
<p class="form-text text-muted mb-0">For wallet compatibility: Bech32 encoded (classic) vs. cleartext URL (upcoming)</p>
|
||||
<div class="form-text">For wallet compatibility: Bech32 encoded (classic) vs. cleartext URL (upcoming)</div>
|
||||
</div>
|
||||
</label>
|
||||
</div>
|
||||
|
@ -105,7 +104,7 @@
|
|||
<input type="checkbox" asp-for="LNURLStandardInvoiceEnabled" class="btcpay-toggle me-3" />
|
||||
<div class="">
|
||||
<label asp-for="LNURLStandardInvoiceEnabled" class="form-label mb-0 me-1"></label>
|
||||
<p class="form-text text-muted mb-0">Required for Lightning Address, the pay button and apps.</p>
|
||||
<div class="form-text">Required for Lightning Address, the pay button and apps.</div>
|
||||
</div>
|
||||
</label>
|
||||
</div>
|
||||
|
@ -115,7 +114,7 @@
|
|||
<input type="checkbox" asp-for="DisableBolt11PaymentMethod" class="btcpay-toggle me-3" />
|
||||
<div class="">
|
||||
<label asp-for="DisableBolt11PaymentMethod" class="form-label mb-0 me-1"></label>
|
||||
<p class="form-text text-muted mb-0">Performance: Turn it off if users should pay only via LNURL.</p>
|
||||
<div class="form-text">Performance: Turn it off if users should pay only via LNURL.</div>
|
||||
</div>
|
||||
</label>
|
||||
</div>
|
||||
|
|
|
@ -29,15 +29,15 @@
|
|||
<i class="fa fa-eye"></i>
|
||||
</span>
|
||||
</div>
|
||||
<p class="text-muted small form-text">The endpoint receiving the payload must validate the payload by checking that the HTTP header <code>BTCPAY-SIG</code> of the callback matches the HMAC256 of the secret on the payload's body bytes.</p>
|
||||
<div class="form-text">The endpoint receiving the payload must validate the payload by checking that the HTTP header <code>BTCPAY-SIG</code> of the callback matches the HMAC256 of the secret on the payload's body bytes.</div>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label class="form-group d-flex align-items-center">
|
||||
<input asp-for="AutomaticRedelivery" type="checkbox" class="btcpay-toggle me-3" />
|
||||
<div class="">
|
||||
<div>
|
||||
<span>Automatic redelivery</span>
|
||||
<p class="text-muted small form-text mb-0">We will try to redeliver any failed delivery after 10 seconds, 1 minute and up to 6 times after 10 minutes</p>
|
||||
</div>
|
||||
<div class="form-text">We will try to redeliver any failed delivery after 10 seconds, 1 minute and up to 6 times after 10 minutes</div>
|
||||
</div>
|
||||
</label>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
|
|
|
@ -154,9 +154,9 @@
|
|||
<label asp-for="PreferredExchange" class="form-label"></label>
|
||||
<select asp-for="PreferredExchange" asp-items="Model.Exchanges" class="form-select"></select>
|
||||
<span asp-validation-for="PreferredExchange" class="text-danger"></span>
|
||||
<p id="PreferredExchangeHelpBlock" class="form-text text-muted">
|
||||
<div id="PreferredExchangeHelpBlock" class="form-text">
|
||||
Current Rates source is <a href="@Model.RateSource" target="_blank" rel="noreferrer noopener">@Model.PreferredExchange</a>.
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
}
|
||||
<div class="form-group">
|
||||
|
@ -164,9 +164,9 @@
|
|||
<button type="submit" id="ShowScripting" class="btcpay-toggle me-3 @if (Model.ShowScripting) { @("btcpay-toggle--active") }" value="scripting-@(Model.ShowScripting ? "off" : "on")" name="command" data-bs-toggle="modal" data-bs-target="#ConfirmModal">@(Model.ShowScripting ? "Disable" : "Enable") advanced rate rule scripting</button>
|
||||
<div class="">
|
||||
<span>Advanced rate rule scripting</span>
|
||||
<p class="text-muted small form-text mb-0">
|
||||
<div class="form-text">
|
||||
@(Model.ShowScripting ? "Disabling will delete your rate script." : "Enabling will modify your current rate sources. This is a feature for advanced users.")
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
</label>
|
||||
</div>
|
||||
|
|
|
@ -38,14 +38,14 @@
|
|||
</button>
|
||||
</div>
|
||||
<select asp-for="Rules[index].Trigger" asp-items="@Html.GetEnumSelectList<WebhookEventType>()" class="form-select" required></select>
|
||||
<small class="form-text text-muted">Choose what event sends the email.</small>
|
||||
<span asp-validation-for="Rules[index].Trigger" class="text-danger"></span>
|
||||
<div class="form-text">Choose what event sends the email.</div>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label asp-for="Rules[index].To" class="form-label">Recipients</label>
|
||||
<input type="text" asp-for="Rules[index].To" class="form-control"/>
|
||||
<small class="form-text text-muted">Who to send the email to. For multiple emails, separate with a comma.</small>
|
||||
<span asp-validation-for="Rules[index].To" class="text-danger"></span>
|
||||
<div class="form-text">Who to send the email to. For multiple emails, separate with a comma.</div>
|
||||
</div>
|
||||
<div class="form-check mb-4">
|
||||
<input asp-for="Rules[index].CustomerEmail" type="checkbox" class="form-check-input" />
|
||||
|
|
|
@ -183,7 +183,7 @@
|
|||
<div class="form-check my-1">
|
||||
<input asp-for="ShowRecommendedFee" type="checkbox" class="form-check-input"/>
|
||||
<label asp-for="ShowRecommendedFee" class="form-check-label"></label>
|
||||
<p class="form-text text-muted mb-0">Fee will be shown for BTC and LTC onchain payments only.</p>
|
||||
<div class="form-text">Fee will be shown for BTC and LTC onchain payments only.</div>
|
||||
</div>
|
||||
<div class="form-group mt-2">
|
||||
<label asp-for="RecommendedFeeBlockTarget" class="form-label"></label>
|
||||
|
|
|
@ -104,14 +104,14 @@
|
|||
</div>
|
||||
</div>
|
||||
<span asp-validation-for="Outputs[0].Amount" class="text-danger"></span>
|
||||
<p class="form-text text-secondary mb-0 crypto-info">
|
||||
<div class="form-text crypto-info">
|
||||
Your available balance is
|
||||
<button type="button" class="crypto-balance-link btn btn-link p-0 align-baseline">@Model.CurrentBalance</button> <span>@Model.CryptoCode</span>.
|
||||
@if (Model.ImmatureBalance > 0)
|
||||
{
|
||||
<span><br><span class="text-warning">⚠</span> @Model.ImmatureBalance @Model.CryptoCode are still immature and require additional confirmations.</span>
|
||||
}
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
}
|
||||
else
|
||||
|
@ -141,14 +141,14 @@
|
|||
<span class="input-group-text p-0 border-0">@Model.Fiat</span>
|
||||
</div>
|
||||
</div>
|
||||
<p class="form-text text-secondary crypto-info mb-2">
|
||||
<div class="form-text crypto-info">
|
||||
Your available balance is
|
||||
<button type="button" class="crypto-balance-link btn btn-link p-0 align-baseline">@Model.CurrentBalance</button> <span>@Model.CryptoCode</span>.
|
||||
@if (Model.ImmatureBalance > 0)
|
||||
{
|
||||
<span><br>Note: @Model.ImmatureBalance @Model.CryptoCode are still immature and require additional confirmations.</span>
|
||||
}
|
||||
</p>
|
||||
</div>
|
||||
<span asp-validation-for="Outputs[index].Amount" class="text-danger"></span>
|
||||
</div>
|
||||
<div class="form-check">
|
||||
|
|
3760
BTCPayServer/wwwroot/main/bootstrap/bootstrap.css
vendored
3760
BTCPayServer/wwwroot/main/bootstrap/bootstrap.css
vendored
File diff suppressed because it is too large
Load diff
|
@ -33,15 +33,14 @@
|
|||
--btcpay-warning-text: var(--btcpay-neutral-100);
|
||||
--btcpay-warning-text-hover: var(--btcpay-neutral-100);
|
||||
--btcpay-warning-text-active: var(--btcpay-neutral-100);
|
||||
--btcpay-warning-dim-text: var(--btcpay-neutral-200);
|
||||
--btcpay-warning-dim-text-active: var(--btcpay-yellow-100);
|
||||
--btcpay-light-accent: var(--btcpay-black);
|
||||
--btcpay-light-dim-bg: var(--btcpay-neutral-50);
|
||||
--btcpay-light-shadow: rgba(66, 70, 73, 0.33);
|
||||
--btcpay-light-rgb: 33, 38, 45;
|
||||
--btcpay-dark-accent: var(--btcpay-neutral-400);
|
||||
--btcpay-dark-dim-bg: var(--btcpay-white);
|
||||
--btcpay-dark-dim-bg-striped: var(--btcpay-neutral-200);
|
||||
--btcpay-dark-dim-bg-hover: var(--btcpay-neutral-200);
|
||||
--btcpay-dark-dim-bg-active: var(--btcpay-neutral-300);
|
||||
--btcpay-dark-shadow: rgba(211, 212, 213, 0.33);
|
||||
--btcpay-dark-rgb: 201, 209, 217;
|
||||
}
|
||||
|
|
|
@ -150,9 +150,12 @@
|
|||
--btcpay-neutral-700: var(--btcpay-neutral-light-700);
|
||||
--btcpay-neutral-800: var(--btcpay-neutral-light-800);
|
||||
--btcpay-neutral-900: var(--btcpay-neutral-light-900);
|
||||
|
||||
--btcpay-font-size-base: var(--btcpay-font-size-m);
|
||||
|
||||
--btcpay-bg-tile: var(--btcpay-white);
|
||||
--btcpay-bg-dark: var(--btcpay-brand-dark);
|
||||
|
||||
--btcpay-body-bg: var(--btcpay-neutral-100);
|
||||
--btcpay-body-bg-light: var(--btcpay-white);
|
||||
--btcpay-body-bg-medium: var(--btcpay-neutral-200);
|
||||
|
@ -171,13 +174,16 @@
|
|||
--btcpay-body-link: var(--btcpay-primary);
|
||||
--btcpay-body-link-accent: var(--btcpay-primary-accent);
|
||||
--btcpay-body-shadow: rgba(25, 135, 84, 0.33);
|
||||
|
||||
--btcpay-wizard-bg: var(--btcpay-body-bg);
|
||||
--btcpay-wizard-text: var(--btcpay-body-text);
|
||||
|
||||
--btcpay-header-bg: var(--btcpay-white);
|
||||
--btcpay-header-text: var(--btcpay-body-text);
|
||||
--btcpay-header-link: var(--btcpay-header-text);
|
||||
--btcpay-header-link-accent: var(--btcpay-primary);
|
||||
--btcpay-header-link-active: var(--btcpay-primary);
|
||||
|
||||
--btcpay-nav-link: var(--btcpay-neutral-600);
|
||||
--btcpay-nav-link-accent: var(--btcpay-neutral-700);
|
||||
--btcpay-nav-link-active: var(--btcpay-neutral-900);
|
||||
|
@ -187,6 +193,7 @@
|
|||
--btcpay-nav-border: transparent;
|
||||
--btcpay-nav-border-hover: transparent;
|
||||
--btcpay-nav-border-active: var(--btcpay-primary);
|
||||
|
||||
--btcpay-form-bg: var(--btcpay-white);
|
||||
--btcpay-form-bg-hover: var(--btcpay-form-bg);
|
||||
--btcpay-form-bg-addon: var(--btcpay-neutral-300);
|
||||
|
@ -204,18 +211,22 @@
|
|||
--btcpay-form-shadow-focus: var(--btcpay-primary-shadow);
|
||||
--btcpay-form-shadow-valid: var(--btcpay-success-shadow);
|
||||
--btcpay-form-shadow-invalid: var(--btcpay-danger-shadow);
|
||||
|
||||
--btcpay-toggle-bg: var(--btcpay-neutral-500);
|
||||
--btcpay-toggle-bg-hover: var(--btcpay-neutral-600);
|
||||
--btcpay-toggle-bg-active: var(--btcpay-primary);
|
||||
--btcpay-toggle-bg-active-hover: var(--btcpay-primary-600);
|
||||
|
||||
--btcpay-footer-bg: var(--btcpay-body-bg);
|
||||
--btcpay-footer-text: var(--btcpay-body-text-muted);
|
||||
--btcpay-footer-link: var(--btcpay-body-text-muted);
|
||||
--btcpay-footer-link-accent: var(--btcpay-neutral-600);
|
||||
|
||||
--btcpay-code-text: var(--btcpay-body-text);
|
||||
--btcpay-code-bg: transparent;
|
||||
--btcpay-pre-text: var(--btcpay-white);
|
||||
--btcpay-pre-bg: var(--btcpay-neutral-900);
|
||||
|
||||
--btcpay-primary: var(--btcpay-brand-primary);
|
||||
--btcpay-primary-accent: var(--btcpay-brand-tertiary);
|
||||
--btcpay-primary-text: var(--btcpay-white);
|
||||
|
@ -238,6 +249,7 @@
|
|||
--btcpay-primary-dim-text-active: var(--btcpay-primary-900);
|
||||
--btcpay-primary-shadow: rgba(81, 177, 62, 0.5);
|
||||
--btcpay-primary-rgb: 81, 177, 62;
|
||||
|
||||
--btcpay-secondary: var(--btcpay-white);
|
||||
--btcpay-secondary-accent: var(--btcpay-secondary);
|
||||
--btcpay-secondary-text: var(--btcpay-primary);
|
||||
|
@ -260,6 +272,7 @@
|
|||
--btcpay-secondary-dim-text-active: var(--btcpay-neutral-900);
|
||||
--btcpay-secondary-shadow: rgba(130, 138, 145, 0.33);
|
||||
--btcpay-secondary-rgb: 255, 255, 255;
|
||||
|
||||
--btcpay-success: var(--btcpay-green-500);
|
||||
--btcpay-success-accent: var(--btcpay-green-700);
|
||||
--btcpay-success-text: var(--btcpay-white);
|
||||
|
@ -282,6 +295,7 @@
|
|||
--btcpay-success-dim-text-active: var(--btcpay-green-900);
|
||||
--btcpay-success-shadow: rgba(60, 153, 110, 0.33);
|
||||
--btcpay-success-rgb: var(--btcpay-green-rgb);
|
||||
|
||||
--btcpay-info: var(--btcpay-blue-500);
|
||||
--btcpay-info-accent: var(--btcpay-blue-700);
|
||||
--btcpay-info-text: var(--btcpay-white);
|
||||
|
@ -304,6 +318,7 @@
|
|||
--btcpay-info-dim-text-active: var(--btcpay-blue-900);
|
||||
--btcpay-info-shadow: rgba(11, 172, 204, 0.33);
|
||||
--btcpay-info-rgb: var(--btcpay-blue-rgb);
|
||||
|
||||
--btcpay-warning: var(--btcpay-yellow-500);
|
||||
--btcpay-warning-accent: var(--btcpay-yellow-700);
|
||||
--btcpay-warning-text: var(--btcpay-neutral-900);
|
||||
|
@ -326,6 +341,7 @@
|
|||
--btcpay-warning-dim-text-active: var(--btcpay-yellow-900);
|
||||
--btcpay-warning-shadow: rgba(217, 164, 6, 0.33);
|
||||
--btcpay-warning-rgb: var(--btcpay-yellow-rgb);
|
||||
|
||||
--btcpay-danger: var(--btcpay-red-500);
|
||||
--btcpay-danger-accent: var(--btcpay-red-700);
|
||||
--btcpay-danger-text: var(--btcpay-white);
|
||||
|
@ -348,6 +364,7 @@
|
|||
--btcpay-danger-dim-text-active: var(--btcpay-red-900);
|
||||
--btcpay-danger-shadow: rgba(225, 83, 97, 0.33);
|
||||
--btcpay-danger-rgb: var(--btcpay-red-rgb);
|
||||
|
||||
--btcpay-light: var(--btcpay-neutral-200);
|
||||
--btcpay-light-accent: var(--btcpay-neutral-400);
|
||||
--btcpay-light-text: var(--btcpay-neutral-800);
|
||||
|
@ -370,6 +387,7 @@
|
|||
--btcpay-light-dim-text-active: var(--btcpay-neutral-900);
|
||||
--btcpay-light-shadow: rgba(211, 212, 213, 0.33);
|
||||
--btcpay-light-rgb: 233, 236, 239;
|
||||
|
||||
--btcpay-dark: var(--btcpay-neutral-800);
|
||||
--btcpay-dark-accent: var(--btcpay-black);
|
||||
--btcpay-dark-text: var(--btcpay-neutral-200);
|
||||
|
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
Loading…
Add table
Reference in a new issue