satdress-custom2/index.html

197 lines
6.9 KiB
HTML
Raw Normal View History

<!DOCTYPE html>
<html lang="en">
<head>
<title>Satdress - Federated Lightning Address Server</title>
<meta charset="utf-8" />
<link rel="icon" type="image/png" href="https://i.imgur.com/4yaPtA2.png" />
2021-08-28 12:13:32 +00:00
<meta name="viewport" content="width=device-width, initial-scale=1" />
2022-01-19 22:52:15 +00:00
<link rel="stylesheet" type="text/css" href="//fonts.googleapis.com/css?family=PT+Sans" />
<link rel="stylesheet" href="/static/style.css" />
</head>
<body>
2021-08-14 23:52:16 +00:00
<main id="main">
2021-08-27 02:59:29 +00:00
<div class="title">{{ siteName }}</div>
2021-08-14 23:52:16 +00:00
<div class="tagline">Federated Lightning Address Server</div>
2021-08-15 14:40:01 +00:00
<div class="owner">
2021-08-28 12:13:32 +00:00
<a class="owner-button" :href="siteOwnerURL" target="_blank">
2021-08-15 14:40:01 +00:00
Brought to you by <span class="owner-name">{{ siteOwnerName }}</span>
</a>
</div>
2021-08-14 23:52:16 +00:00
<div class="card">
2021-08-28 12:13:32 +00:00
<div class="description">
Use the form below to connect your own node to a
<b>Lightning Address</b>.
</div>
2021-08-14 23:52:16 +00:00
<form action="/grab" method="post">
2021-08-20 12:32:45 +00:00
<div class="field">
<div class="row">
2022-01-18 23:50:47 +00:00
<label for="name"> {{usernameInfo}} </label>
2021-08-20 12:32:45 +00:00
</div>
<div class="domain-wrapper">
2021-08-28 12:13:32 +00:00
<input class="input" name="name" id="name" />
2022-01-19 22:52:15 +00:00
<span v-if="domains.length == 1">@{{ domains[0] }}</span>
<span v-if="domains.length > 1">@</span>
2022-01-18 23:50:47 +00:00
<select name="domain" id="domain" id="domain" v-if="domains.length > 1">
<option v-for="domain in domains" :value="domain">{{ domain }}</option>
</select>
2021-08-14 23:52:16 +00:00
</div>
2021-08-20 12:32:45 +00:00
</div>
<div class="field">
2021-08-28 12:13:32 +00:00
<label for="kind"> Node Backend Type </label>
2021-08-20 12:32:45 +00:00
<select name="kind" id="kind" id="kind" v-model="kind">
<option disabled value="">Please select one:</option>
2021-08-14 23:52:16 +00:00
<option value="lnd">LND</option>
<option value="eclair">Eclair</option>
2022-03-16 00:16:02 +00:00
<option value="sparko">Sparko (c-lightning)</option>
<option value="commando">Commando (c-lightning)</option>
2021-08-14 23:52:16 +00:00
<option value="lnpay">LNPay</option>
<option value="lnbits">LNbits</option>
</select>
2021-08-20 12:32:45 +00:00
</div>
2021-08-14 23:52:16 +00:00
<div v-if="kind == 'lnd'">
2021-08-20 12:32:45 +00:00
<div class="field">
<label for="host">
LND REST Host (Protocol + IP/Domain + Port)
</label>
<input
class="input full-width"
name="host"
id="host"
placeholder="http://mylndonionztxrvxtzrs.onion:8080"
/>
2021-08-20 12:32:45 +00:00
</div>
<div class="field">
<label for="macaroon"> Invoice Macaroon (base64 encoded) </label>
<input
class="input full-width"
name="key"
id="macaroon"
placeholder="V2UgYWxsIGxvdmUgQGZpYXRqYWYhCg=="
/>
2021-08-20 12:32:45 +00:00
</div>
2021-08-14 23:52:16 +00:00
</div>
<div v-if="kind == 'sparko' || kind == 'lnbits'">
2021-08-20 12:32:45 +00:00
<div class="field">
<label for="host"> Host (Protocol + IP or Domain + Port) </label>
<input
class="input full-width"
name="host"
id="host"
placeholder="http://10.147.17.32:9737"
/>
2021-08-20 12:32:45 +00:00
</div>
<div class="field">
2021-08-28 12:13:32 +00:00
<label for="key"> Key </label>
<input class="input full-width" name="key" id="key" />
2021-08-20 12:32:45 +00:00
</div>
2021-08-14 23:52:16 +00:00
</div>
<div v-if="kind == 'eclair'">
<div class="field">
<label for="host"> Host (Protocol + IP or Domain + Port) </label>
<input
class="input full-width"
name="host"
id="host"
placeholder="http://myeclair.com"
/>
</div>
<div>
<p>
Don't input your Eclair password here nor expose your Eclair
node carelessly. Follow
<a
href="https://gist.github.com/fiatjaf/8e74740d30763713154de15562e08789#file-exposing-eclair-md"
>these instructions</a
>
instead (or do something better).
</p>
</div>
</div>
2021-08-14 23:52:16 +00:00
<div v-if="kind == 'lnpay'">
2021-08-20 12:32:45 +00:00
<div class="field">
2021-08-28 12:13:32 +00:00
<label for="pak"> Public Access Key (pak) </label>
<input class="input full-width" name="pak" id="pak" />
2021-08-20 12:32:45 +00:00
</div>
<div class="field">
2021-08-28 12:13:32 +00:00
<label for="waki"> Wallet Invoice Key (waki) </label>
<input class="input full-width" name="waki" id="waki" />
2021-08-20 12:32:45 +00:00
</div>
</div>
<div class="field">
<label style="float: right">
This is a new Lightning Address
2021-08-28 12:13:32 +00:00
<input type="checkbox" v-model="isNew" />
</label>
</div>
2022-03-16 00:16:02 +00:00
<div v-if="kind == 'commando'">
<div class="field">
<label for="nodeid">Node ID (pubkey)</label>
<input
class="input full-width"
name="nodeid"
id="nodeid"
placeholder="02c16cca44562b590dd279c942200bdccfd4f990c3a69fad620c10ef2f8228eaff"
/>
</div>
<div class="field">
<label for="host">Node IP + Port</label>
<input
class="input full-width"
name="host"
id="host"
placeholder="10.147.17.32:9735"
/>
</div>
<div class="field">
<label for="rune">Rune</label>
<input class="input full-width" name="rune" id="rune" />
</div>
</div>
<br />
2021-08-20 12:32:45 +00:00
<div class="field" v-if="!isNew">
2021-08-28 12:13:32 +00:00
<label for="pin"> Secret PIN </label>
<input class="input full-width" name="pin" id="pin" />
2021-08-14 23:52:16 +00:00
</div>
<button class="submit">Submit</button>
</form>
</div>
<div class="resources">
2021-08-15 14:40:01 +00:00
<a
class="resource-button"
href="https://github.com/andrerfneves/lightning-address#readme"
2021-08-28 12:13:32 +00:00
target="_blank"
>
2021-08-14 23:52:16 +00:00
Lightning Address Documentation
</a>
2021-08-15 14:40:01 +00:00
<a
class="resource-button"
target="_blank"
2021-08-28 12:13:32 +00:00
href="https://github.com/fiatjaf/satdress"
>
2021-08-15 14:40:01 +00:00
Host this server on your domain!
</a>
2021-08-14 23:52:16 +00:00
</div>
</main>
2021-08-28 12:13:32 +00:00
<script src="https://cdnjs.cloudflare.com/ajax/libs/vue/3.2.2/vue.global.prod.min.js"></script>
2021-08-14 23:52:16 +00:00
<script>
const initial = {} // REPLACED WITH SERVER DATA //
2021-08-15 14:40:01 +00:00
const Main = {
data() {
return {
kind: 'lnd',
2021-08-20 12:32:45 +00:00
isNew: true,
2021-08-28 12:13:32 +00:00
...initial
2021-08-15 14:40:01 +00:00
}
},
mounted() {
this.kind = ''
2021-08-15 14:40:01 +00:00
}
2021-08-28 12:13:32 +00:00
}
2021-08-28 12:13:32 +00:00
Vue.createApp(Main).mount('#main')
2021-08-14 23:52:16 +00:00
</script>
</body>
</html>