also support all currencies in lnurlp.

This commit is contained in:
fiatjaf
2021-03-14 21:50:05 -03:00
parent 0bc66ea150
commit 1bc59974a8
3 changed files with 18 additions and 3 deletions

View File

@@ -26,6 +26,7 @@ new Vue({
mixins: [windowMixin], mixins: [windowMixin],
data() { data() {
return { return {
currencies: [],
fiatRates: {}, fiatRates: {},
checker: null, checker: null,
payLinks: [], payLinks: [],
@@ -203,5 +204,14 @@ new Vue({
getPayLinks() getPayLinks()
}, 20000) }, 20000)
} }
LNbits.api
.request('GET', '/lnurlp/api/v1/currencies')
.then(response => {
this.currencies = ['satoshis', ...response.data]
})
.catch(err => {
LNbits.utils.notifyApiError(err)
})
} }
}) })

View File

@@ -182,7 +182,7 @@
<div class="col"> <div class="col">
<q-select <q-select
dense dense
:options='["satoshis", "USD"]' :options="currencies"
v-model="formDialog.data.currency" v-model="formDialog.data.currency"
:display-value="formDialog.data.currency || 'satoshis'" :display-value="formDialog.data.currency || 'satoshis'"
label="Currency" label="Currency"

View File

@@ -4,7 +4,7 @@ from lnurl.exceptions import InvalidUrl as LnurlInvalidUrl # type: ignore
from lnbits.core.crud import get_user from lnbits.core.crud import get_user
from lnbits.decorators import api_check_wallet_key, api_validate_post_request from lnbits.decorators import api_check_wallet_key, api_validate_post_request
from lnbits.utils.exchange_rates import get_fiat_rate_satoshis from lnbits.utils.exchange_rates import currencies, get_fiat_rate_satoshis
from . import lnurlp_ext from . import lnurlp_ext
from .crud import ( from .crud import (
@@ -16,6 +16,11 @@ from .crud import (
) )
@lnurlp_ext.route("/api/v1/currencies", methods=["GET"])
async def api_list_currencies_available():
return jsonify(list(currencies.keys()))
@lnurlp_ext.route("/api/v1/links", methods=["GET"]) @lnurlp_ext.route("/api/v1/links", methods=["GET"])
@api_check_wallet_key("invoice") @api_check_wallet_key("invoice")
async def api_links(): async def api_links():
@@ -58,7 +63,7 @@ async def api_link_retrieve(link_id):
"description": {"type": "string", "empty": False, "required": True}, "description": {"type": "string", "empty": False, "required": True},
"min": {"type": "number", "min": 0.01, "required": True}, "min": {"type": "number", "min": 0.01, "required": True},
"max": {"type": "number", "min": 0.01, "required": True}, "max": {"type": "number", "min": 0.01, "required": True},
"currency": {"type": "string", "allowed": ["USD"], "nullable": True, "required": False}, "currency": {"type": "string", "nullable": True, "required": False},
"comment_chars": {"type": "integer", "required": True, "min": 0, "max": 800}, "comment_chars": {"type": "integer", "required": True, "min": 0, "max": 800},
"webhook_url": {"type": "string", "required": False}, "webhook_url": {"type": "string", "required": False},
"success_text": {"type": "string", "required": False}, "success_text": {"type": "string", "required": False},