Compare commits
No commits in common. "eefadb6c2036ef14883c6fbe7be13c9465a27130" and "8b64e9c7425ab7da2bdc992830104c0d162a35f1" have entirely different histories.
eefadb6c20
...
8b64e9c742
2 changed files with 16 additions and 70 deletions
|
|
@ -200,13 +200,6 @@ window.app = Vue.createApp({
|
||||||
durationHours: null,
|
durationHours: null,
|
||||||
result: null
|
result: null
|
||||||
},
|
},
|
||||||
// Fullscreen QR overlay — maximises a QR's on-screen size so a spire
|
|
||||||
// camera can lock onto it. openQrZoom() sizes it to the viewport.
|
|
||||||
qrZoom: {
|
|
||||||
show: false,
|
|
||||||
value: '',
|
|
||||||
size: 280
|
|
||||||
},
|
|
||||||
machineDetail: {
|
machineDetail: {
|
||||||
show: false,
|
show: false,
|
||||||
loading: false,
|
loading: false,
|
||||||
|
|
@ -1610,18 +1603,6 @@ window.app = Vue.createApp({
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
|
|
||||||
// Open a fullscreen QR sized to nearly the full shorter viewport edge
|
|
||||||
// so it renders as large as possible for a spire's camera. The QR's
|
|
||||||
// wrapper caps at 96vw, so an over-estimate here is fine — it just
|
|
||||||
// means "fill the width". Feeds the lnbits-qrcode `max-width` prop.
|
|
||||||
openQrZoom(value) {
|
|
||||||
if (!value) return
|
|
||||||
const edge = Math.min(window.innerWidth, window.innerHeight)
|
|
||||||
this.qrZoom.size = Math.max(240, Math.floor(edge - 16))
|
|
||||||
this.qrZoom.value = value
|
|
||||||
this.qrZoom.show = true
|
|
||||||
},
|
|
||||||
|
|
||||||
_emptyDepositForm() {
|
_emptyDepositForm() {
|
||||||
// currency is server-resolved from the selected client's machine
|
// currency is server-resolved from the selected client's machine
|
||||||
// fiat_code (see #26); not stored on the form, just displayed in
|
// fiat_code (see #26); not stored on the form, just displayed in
|
||||||
|
|
|
||||||
|
|
@ -763,13 +763,13 @@
|
||||||
<!-- ADD MACHINE DIALOG -->
|
<!-- ADD MACHINE DIALOG -->
|
||||||
<!-- =============================================================== -->
|
<!-- =============================================================== -->
|
||||||
<q-dialog v-model="addMachineDialog.show" persistent>
|
<q-dialog v-model="addMachineDialog.show" persistent>
|
||||||
<q-card :style="{width: '480px', maxWidth: '95vw'}">
|
<q-card :style="{minWidth: '480px', maxWidth: '95vw'}">
|
||||||
<q-card-section class="row items-center q-pb-none">
|
<q-card-section class="row items-center q-pb-none">
|
||||||
<div class="text-h6">Add bitSpire machine</div>
|
<div class="text-h6">Add bitSpire machine</div>
|
||||||
<q-space ></q-space>
|
<q-space ></q-space>
|
||||||
<q-btn icon="close" flat round dense v-close-popup></q-btn>
|
<q-btn icon="close" flat round dense v-close-popup></q-btn>
|
||||||
</q-card-section>
|
</q-card-section>
|
||||||
<q-card-section class="scroll" :style="{maxHeight: '65vh'}">
|
<q-card-section>
|
||||||
<p class="text-caption q-mb-md" :style="{opacity: 0.7}">
|
<p class="text-caption q-mb-md" :style="{opacity: 0.7}">
|
||||||
Register an ATM by its Nostr public key. Choose the LNbits wallet that
|
Register an ATM by its Nostr public key. Choose the LNbits wallet that
|
||||||
will receive cash-out payments from this machine — settlements there
|
will receive cash-out payments from this machine — settlements there
|
||||||
|
|
@ -847,7 +847,7 @@
|
||||||
<!-- PAIR SPIRE DIALOG — mint bunker key + one-shot seed URL (S0/#9) -->
|
<!-- PAIR SPIRE DIALOG — mint bunker key + one-shot seed URL (S0/#9) -->
|
||||||
<!-- =============================================================== -->
|
<!-- =============================================================== -->
|
||||||
<q-dialog v-model="pairDialog.show" persistent>
|
<q-dialog v-model="pairDialog.show" persistent>
|
||||||
<q-card :style="{width: '480px', maxWidth: '95vw'}">
|
<q-card :style="{minWidth: '480px', maxWidth: '95vw'}">
|
||||||
<q-card-section class="row items-center q-pb-none">
|
<q-card-section class="row items-center q-pb-none">
|
||||||
<div class="text-h6">Pair spire</div>
|
<div class="text-h6">Pair spire</div>
|
||||||
<q-space></q-space>
|
<q-space></q-space>
|
||||||
|
|
@ -901,16 +901,10 @@
|
||||||
into <code>provision-atm</code>. Shown once — copy it now.
|
into <code>provision-atm</code>. Shown once — copy it now.
|
||||||
</q-banner>
|
</q-banner>
|
||||||
|
|
||||||
<div class="column items-center q-mb-md">
|
<div class="row justify-center q-mb-md">
|
||||||
<div class="cursor-pointer" :style="{width: '280px', maxWidth: '90vw'}"
|
<lnbits-qrcode
|
||||||
@click="openQrZoom(pairDialog.result.seed_url)">
|
:value="pairDialog.result.seed_url"
|
||||||
<lnbits-qrcode
|
:options="{width: 280}"></lnbits-qrcode>
|
||||||
:value="pairDialog.result.seed_url"
|
|
||||||
:max-width="280"></lnbits-qrcode>
|
|
||||||
</div>
|
|
||||||
<q-btn flat dense color="primary" icon="zoom_out_map"
|
|
||||||
label="Enlarge for scanning" size="sm" class="q-mt-sm"
|
|
||||||
@click="openQrZoom(pairDialog.result.seed_url)"></q-btn>
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<q-input
|
<q-input
|
||||||
|
|
@ -944,35 +938,6 @@
|
||||||
</q-card>
|
</q-card>
|
||||||
</q-dialog>
|
</q-dialog>
|
||||||
|
|
||||||
<!-- =============================================================== -->
|
|
||||||
<!-- QR ZOOM DIALOG — fullscreen QR to maximise scan visibility -->
|
|
||||||
<!-- =============================================================== -->
|
|
||||||
<q-dialog v-model="qrZoom.show" maximized>
|
|
||||||
<q-card class="bg-white text-grey-9 column no-wrap">
|
|
||||||
<q-bar class="bg-white">
|
|
||||||
<q-space></q-space>
|
|
||||||
<q-btn dense flat icon="close" color="grey-9" v-close-popup>
|
|
||||||
<q-tooltip>Close</q-tooltip>
|
|
||||||
</q-btn>
|
|
||||||
</q-bar>
|
|
||||||
<q-card-section
|
|
||||||
class="col column items-center justify-center q-pt-none">
|
|
||||||
<!-- lnbits-qrcode renders width:100% of its parent capped by the
|
|
||||||
max-width prop (NOT an `options` prop). Give it an explicit
|
|
||||||
full-width wrapper so it actually fills the screen. -->
|
|
||||||
<div :style="{width: qrZoom.size + 'px', maxWidth: '96vw'}">
|
|
||||||
<lnbits-qrcode
|
|
||||||
:value="qrZoom.value"
|
|
||||||
:max-width="qrZoom.size"
|
|
||||||
:show-buttons="false"></lnbits-qrcode>
|
|
||||||
</div>
|
|
||||||
<div class="text-caption text-center q-mt-md" :style="{opacity: 0.7}">
|
|
||||||
Point the spire's camera here — tap Close when scanned.
|
|
||||||
</div>
|
|
||||||
</q-card-section>
|
|
||||||
</q-card>
|
|
||||||
</q-dialog>
|
|
||||||
|
|
||||||
<!-- =============================================================== -->
|
<!-- =============================================================== -->
|
||||||
<!-- MACHINE DETAIL DIALOG — settlements list + per-row actions -->
|
<!-- MACHINE DETAIL DIALOG — settlements list + per-row actions -->
|
||||||
<!-- =============================================================== -->
|
<!-- =============================================================== -->
|
||||||
|
|
@ -1247,7 +1212,7 @@
|
||||||
<!-- CASSETTE PUBLISH CONFIRM DIALOG -->
|
<!-- CASSETTE PUBLISH CONFIRM DIALOG -->
|
||||||
<!-- =============================================================== -->
|
<!-- =============================================================== -->
|
||||||
<q-dialog v-model="cassettePublishConfirm.show" persistent>
|
<q-dialog v-model="cassettePublishConfirm.show" persistent>
|
||||||
<q-card :style="{width: '480px', maxWidth: '95vw'}">
|
<q-card :style="{minWidth: '480px', maxWidth: '95vw'}">
|
||||||
<q-card-section class="row items-center q-pb-none">
|
<q-card-section class="row items-center q-pb-none">
|
||||||
<div class="text-h6">Publish cassette config to ATM</div>
|
<div class="text-h6">Publish cassette config to ATM</div>
|
||||||
<q-space ></q-space>
|
<q-space ></q-space>
|
||||||
|
|
@ -1299,7 +1264,7 @@
|
||||||
<!-- PARTIAL-DISPENSE DIALOG -->
|
<!-- PARTIAL-DISPENSE DIALOG -->
|
||||||
<!-- =============================================================== -->
|
<!-- =============================================================== -->
|
||||||
<q-dialog v-model="partialDispenseDialog.show" persistent>
|
<q-dialog v-model="partialDispenseDialog.show" persistent>
|
||||||
<q-card :style="{width: '480px', maxWidth: '95vw'}">
|
<q-card :style="{minWidth: '480px', maxWidth: '95vw'}">
|
||||||
<q-card-section class="row items-center q-pb-none">
|
<q-card-section class="row items-center q-pb-none">
|
||||||
<div class="text-h6">Apply partial dispense</div>
|
<div class="text-h6">Apply partial dispense</div>
|
||||||
<q-space ></q-space>
|
<q-space ></q-space>
|
||||||
|
|
@ -1358,7 +1323,7 @@
|
||||||
<!-- ADD-NOTE DIALOG -->
|
<!-- ADD-NOTE DIALOG -->
|
||||||
<!-- =============================================================== -->
|
<!-- =============================================================== -->
|
||||||
<q-dialog v-model="noteDialog.show" persistent>
|
<q-dialog v-model="noteDialog.show" persistent>
|
||||||
<q-card :style="{width: '420px', maxWidth: '95vw'}">
|
<q-card :style="{minWidth: '420px', maxWidth: '95vw'}">
|
||||||
<q-card-section class="row items-center q-pb-none">
|
<q-card-section class="row items-center q-pb-none">
|
||||||
<div class="text-h6">Add note to settlement</div>
|
<div class="text-h6">Add note to settlement</div>
|
||||||
<q-space ></q-space>
|
<q-space ></q-space>
|
||||||
|
|
@ -1388,7 +1353,7 @@
|
||||||
<!-- SUPER-FEE EDIT DIALOG (super-only) -->
|
<!-- SUPER-FEE EDIT DIALOG (super-only) -->
|
||||||
<!-- =============================================================== -->
|
<!-- =============================================================== -->
|
||||||
<q-dialog v-model="superFeeDialog.show" persistent>
|
<q-dialog v-model="superFeeDialog.show" persistent>
|
||||||
<q-card :style="{width: '460px', maxWidth: '95vw'}">
|
<q-card :style="{minWidth: '460px', maxWidth: '95vw'}">
|
||||||
<q-card-section class="row items-center q-pb-none">
|
<q-card-section class="row items-center q-pb-none">
|
||||||
<div class="text-h6">Platform fee (super-only)</div>
|
<div class="text-h6">Platform fee (super-only)</div>
|
||||||
<q-space ></q-space>
|
<q-space ></q-space>
|
||||||
|
|
@ -1435,7 +1400,7 @@
|
||||||
<!-- ADD / EDIT DEPOSIT DIALOG -->
|
<!-- ADD / EDIT DEPOSIT DIALOG -->
|
||||||
<!-- =============================================================== -->
|
<!-- =============================================================== -->
|
||||||
<q-dialog v-model="depositDialog.show" persistent>
|
<q-dialog v-model="depositDialog.show" persistent>
|
||||||
<q-card :style="{width: '460px', maxWidth: '95vw'}">
|
<q-card :style="{minWidth: '460px', maxWidth: '95vw'}">
|
||||||
<q-card-section class="row items-center q-pb-none">
|
<q-card-section class="row items-center q-pb-none">
|
||||||
<div class="text-h6"
|
<div class="text-h6"
|
||||||
v-text="depositDialog.mode === 'add' ? 'Record deposit' : 'Edit deposit'"></div>
|
v-text="depositDialog.mode === 'add' ? 'Record deposit' : 'Edit deposit'"></div>
|
||||||
|
|
@ -1501,7 +1466,7 @@
|
||||||
<!-- REJECT DEPOSIT DIALOG (status update with notes) -->
|
<!-- REJECT DEPOSIT DIALOG (status update with notes) -->
|
||||||
<!-- =============================================================== -->
|
<!-- =============================================================== -->
|
||||||
<q-dialog v-model="rejectDepositDialog.show" persistent>
|
<q-dialog v-model="rejectDepositDialog.show" persistent>
|
||||||
<q-card :style="{width: '420px', maxWidth: '95vw'}">
|
<q-card :style="{minWidth: '420px', maxWidth: '95vw'}">
|
||||||
<q-card-section class="row items-center q-pb-none">
|
<q-card-section class="row items-center q-pb-none">
|
||||||
<div class="text-h6">Reject deposit</div>
|
<div class="text-h6">Reject deposit</div>
|
||||||
<q-space ></q-space>
|
<q-space ></q-space>
|
||||||
|
|
@ -1530,7 +1495,7 @@
|
||||||
<!-- ADD / EDIT CLIENT DIALOGS -->
|
<!-- ADD / EDIT CLIENT DIALOGS -->
|
||||||
<!-- =============================================================== -->
|
<!-- =============================================================== -->
|
||||||
<q-dialog v-model="clientDialog.show" persistent>
|
<q-dialog v-model="clientDialog.show" persistent>
|
||||||
<q-card :style="{width: '520px', maxWidth: '95vw'}">
|
<q-card :style="{minWidth: '520px', maxWidth: '95vw'}">
|
||||||
<q-card-section class="row items-center q-pb-none">
|
<q-card-section class="row items-center q-pb-none">
|
||||||
<div class="text-h6" v-text="clientDialog.mode === 'add' ? 'Register liquidity provider' : 'Edit LP'"></div>
|
<div class="text-h6" v-text="clientDialog.mode === 'add' ? 'Register liquidity provider' : 'Edit LP'"></div>
|
||||||
<q-space ></q-space>
|
<q-space ></q-space>
|
||||||
|
|
@ -1587,7 +1552,7 @@
|
||||||
<!-- SETTLE BALANCE DIALOG (closes spirekeeper#2) -->
|
<!-- SETTLE BALANCE DIALOG (closes spirekeeper#2) -->
|
||||||
<!-- =============================================================== -->
|
<!-- =============================================================== -->
|
||||||
<q-dialog v-model="settleBalanceDialog.show" persistent>
|
<q-dialog v-model="settleBalanceDialog.show" persistent>
|
||||||
<q-card :style="{width: '480px', maxWidth: '95vw'}">
|
<q-card :style="{minWidth: '480px', maxWidth: '95vw'}">
|
||||||
<q-card-section class="row items-center q-pb-none">
|
<q-card-section class="row items-center q-pb-none">
|
||||||
<div class="text-h6">Settle LP balance</div>
|
<div class="text-h6">Settle LP balance</div>
|
||||||
<q-space ></q-space>
|
<q-space ></q-space>
|
||||||
|
|
@ -1646,7 +1611,7 @@
|
||||||
<!-- EDIT MACHINE DIALOG (same fields; PUT instead of POST) -->
|
<!-- EDIT MACHINE DIALOG (same fields; PUT instead of POST) -->
|
||||||
<!-- =============================================================== -->
|
<!-- =============================================================== -->
|
||||||
<q-dialog v-model="editMachineDialog.show" persistent>
|
<q-dialog v-model="editMachineDialog.show" persistent>
|
||||||
<q-card :style="{width: '480px', maxWidth: '95vw'}">
|
<q-card :style="{minWidth: '480px', maxWidth: '95vw'}">
|
||||||
<q-card-section class="row items-center q-pb-none">
|
<q-card-section class="row items-center q-pb-none">
|
||||||
<div class="text-h6">Edit machine</div>
|
<div class="text-h6">Edit machine</div>
|
||||||
<q-space ></q-space>
|
<q-space ></q-space>
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue