mirror of
https://github.com/btcpayserver/btcpayserver.git
synced 2024-11-20 10:40:29 +01:00
8420c74b31
Cache static assets for one year and set the correct cache control header. Adds the cache busting version based on file content to asset references to invalidate the cache on change. ([further details on the approach](https://andrewlock.net/adding-cache-control-headers-to-static-files-in-asp-net-core/) and [why one year](https://ashton.codes/set-cache-control-max-age-1-year/)) Most of the changes are the additions of the `asp-append-version="true"` attribute, the main configuration change is in `Startup.cs`.
52 lines
2.5 KiB
Plaintext
52 lines
2.5 KiB
Plaintext
@model WalletSendModel
|
|
|
|
<link href="~/vendor/vue-qrcode-reader/vue-qrcode-reader.css" rel="stylesheet" asp-append-version="true" />
|
|
<div id="wallet-camera-app" v-cloak class="only-for-js">
|
|
<div class="modal fade" data-backdrop="static" id="scanModal">
|
|
|
|
<div class="modal-dialog" role="document">
|
|
<div class="modal-content">
|
|
|
|
<div class="modal-body p-0" v-if="loaded" v-bind:class="{'alert-danger': errorMessage}">
|
|
<div class="p-2" style="position: absolute; right: 0; top: 0; width: 100%; z-index:5">
|
|
<button type="button" class="close" data-dismiss="modal" aria-label="Close" v-on:click="close">
|
|
<span aria-hidden="true">×</span>
|
|
</button>
|
|
</div>
|
|
<qrcode-drop-zone v-on:decode="onDecode" v-on:init="logErrors">
|
|
<qrcode-stream v-on:decode="onDecode" v-on:init="onInit" v-bind:camera="camera" v-bind:track="paint">
|
|
<div v-if="data || errorMessage" class="pending-action">
|
|
|
|
<div class="text-danger p-2" v-if="errorMessage">{{errorMessage}}</div>
|
|
<span class="text-muted">{{data}}</span>
|
|
<div class="w-100 btn-group">
|
|
<button v-if="data" type="button" class="btn btn-primary" data-dismiss="modal" v-on:click="submitData">Submit</button>
|
|
<button type="button" class="btn btn-secondary" v-on:click="retry">Retry</button>
|
|
<button type="button" class="btn btn-danger" data-dismiss="modal" v-on:click="close">Cancel</button>
|
|
</div>
|
|
</div>
|
|
</qrcode-stream>
|
|
</qrcode-drop-zone>
|
|
<qrcode-capture v-if="noStreamApiSupport" v-on:decode="onDecode" v-bind:camera="camera"/>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<style>
|
|
.pending-action {
|
|
position: absolute;
|
|
width: 100%;
|
|
height: 100%;
|
|
|
|
background-color: rgba(255, 255, 255, .8);
|
|
text-align: center;
|
|
font-size: 1.4rem;
|
|
padding: 10px;
|
|
word-wrap: break-word;
|
|
display: flex;
|
|
flex-flow: column nowrap;
|
|
justify-content: center;
|
|
}
|
|
</style>
|