diff --git a/app/sovran_systemsos_web/static/css/modals.css b/app/sovran_systemsos_web/static/css/modals.css index 17b967d..e5ba26e 100644 --- a/app/sovran_systemsos_web/static/css/modals.css +++ b/app/sovran_systemsos_web/static/css/modals.css @@ -546,3 +546,62 @@ button.btn-reboot:hover:not(:disabled) { .nwc-share-formats-hint { text-align: center; } + +/* ── NWC Liquidity Guide Card ────────────────────────────────────── */ + +.nwc-liquidity-guide-card { + background: rgba(255, 255, 255, 0.02); + border: 1px solid var(--border-color); + border-radius: 12px; + padding: 16px; + margin-bottom: 16px; + color: var(--text-primary); +} + +.nwc-liquidity-header { + display: flex; + gap: 12px; + align-items: flex-start; + margin-bottom: 12px; +} + +.nwc-liquidity-icon { + font-size: 24px; +} + +.nwc-liquidity-steps { + display: flex; + flex-direction: column; + gap: 10px; + margin-bottom: 14px; +} + +.nwc-liquidity-step { + display: flex; + gap: 10px; + align-items: flex-start; + font-size: 0.85rem; +} + +.step-num { + background: var(--accent-color); + color: #0A1A10; + width: 20px; + height: 20px; + border-radius: 50%; + display: flex; + align-items: center; + justify-content: center; + font-weight: 700; + font-size: 0.75rem; + flex-shrink: 0; + margin-top: 1px; +} + +.nwc-liquidity-action { + background: rgba(109, 191, 139, 0.08); + border-left: 3px solid var(--green); + padding: 10px 12px; + border-radius: 0 8px 8px 0; + font-size: 0.82rem; +} diff --git a/app/sovran_systemsos_web/static/js/service-detail.js b/app/sovran_systemsos_web/static/js/service-detail.js index 85a7a9e..7acee5d 100644 --- a/app/sovran_systemsos_web/static/js/service-detail.js +++ b/app/sovran_systemsos_web/static/js/service-detail.js @@ -634,9 +634,41 @@ async function openServiceDetailModal(unit, name, icon) { // Section E: Credentials & Links if (_isNwcServiceUnit(unit)) { html += '
Create, verify, drain, and delete isolated NWC wallet connections without leaving the Hub.
' + + html += 'How NWC & Lightning Addresses work on new nodes
' + + '' +
+ 'Your Alby Hub, NWC pairing keys, and Lightning Address endpoints (like name@yourdomain.com) are set up and working instantly. However, sending and receiving actual Bitcoin payments requires an operational Lightning node with active channels.' +
+ '
Required so apps connected via NWC can pay invoices and send funds.
' + + 'Required so your Lightning Address can receive incoming payments from anyone.
' + + '💧 The Plumbing Analogy: Think of channels like two-way water pipes. To pour water in (receive) or pump water out (send), you need open channels with liquidity on both sides.
' + + '' + + 'Create, verify, drain, and delete isolated NWC wallet connections without leaving the Hub.
' + 'Loading wallet connections…
Wallet Connections is disabled. Enable this feature below, rebuild, then return here to create and manage NWC wallet connections.
'; @@ -725,6 +757,12 @@ async function openServiceDetailModal(unit, name, icon) { _attachCopyHandlers($credsBody); if (_isNwcServiceUnit(unit) && (effectiveEnabled || data.enabled)) { await _nwcInitWalletFlow(unit, name, icon); + var nwcRtlBtn = document.getElementById("nwc-open-rtl-btn"); + if (nwcRtlBtn) { + nwcRtlBtn.addEventListener("click", function() { + openServiceDetailModal("rtl.service", "Ride The Lightning", "rtl"); + }); + } } if (unit === "matrix-synapse.service") {