Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions apps/frontend/build/asset-manifest.json
Original file line number Diff line number Diff line change
@@ -1,17 +1,17 @@
{
"files": {
"main.css": "/static/css/main.8b790f7d.css",
"main.js": "/static/js/main.6bd470fa.js",
"main.js": "/static/js/main.5e36fc97.js",
"static/media/Inter-Bold.ttf": "/static/media/Inter-Bold.88fa7ae373b07b41ecce.ttf",
"static/media/Inter-SemiBold.ttf": "/static/media/Inter-SemiBold.4d56bb21f2399db8ad48.ttf",
"static/media/Inter-Medium.ttf": "/static/media/Inter-Medium.6dcbc9bed1ec438907ee.ttf",
"static/media/Inter-Thin.ttf": "/static/media/Inter-Thin.f341ca512063c66296d1.ttf",
"index.html": "/index.html",
"main.8b790f7d.css.map": "/static/css/main.8b790f7d.css.map",
"main.6bd470fa.js.map": "/static/js/main.6bd470fa.js.map"
"main.5e36fc97.js.map": "/static/js/main.5e36fc97.js.map"
},
"entrypoints": [
"static/css/main.8b790f7d.css",
"static/js/main.6bd470fa.js"
"static/js/main.5e36fc97.js"
]
}
2 changes: 1 addition & 1 deletion apps/frontend/build/index.html
Original file line number Diff line number Diff line change
@@ -1 +1 @@
<!doctype html><html lang="en"><head><meta charset="utf-8"/><link rel="icon" href="/images/cln-favicon.ico"/><meta name="viewport" content="width=device-width,initial-scale=1"/><meta name="color-scheme" content="light dark"><meta name="description" content="Core lightning application"/><link rel="apple-touch-icon" href="/images/cln-logo-dark.png"/><title>Core Lightning</title><script defer="defer" src="/static/js/main.6bd470fa.js"></script><link href="/static/css/main.8b790f7d.css" rel="stylesheet"></head><body><noscript>You need to enable JavaScript to run this app.</noscript><div id="root"></div></body></html>
<!doctype html><html lang="en"><head><meta charset="utf-8"/><link rel="icon" href="/images/cln-favicon.ico"/><meta name="viewport" content="width=device-width,initial-scale=1"/><meta name="color-scheme" content="light dark"><meta name="description" content="Core lightning application"/><link rel="apple-touch-icon" href="/images/cln-logo-dark.png"/><title>Core Lightning</title><script defer="defer" src="/static/js/main.5e36fc97.js"></script><link href="/static/css/main.8b790f7d.css" rel="stylesheet"></head><body><noscript>You need to enable JavaScript to run this app.</noscript><div id="root"></div></body></html>
3 changes: 3 additions & 0 deletions apps/frontend/build/static/js/main.5e36fc97.js

Large diffs are not rendered by default.

1 change: 1 addition & 0 deletions apps/frontend/build/static/js/main.5e36fc97.js.map

Large diffs are not rendered by default.

3 changes: 0 additions & 3 deletions apps/frontend/build/static/js/main.6bd470fa.js

This file was deleted.

1 change: 0 additions & 1 deletion apps/frontend/build/static/js/main.6bd470fa.js.map

This file was deleted.

Original file line number Diff line number Diff line change
Expand Up @@ -18,8 +18,10 @@ describe('ConnectWallet component ', () => {
expect(screen.getByText('LN Message')).toBeInTheDocument();
expect(screen.getByTestId('port')).toHaveValue('5001');
expect(screen.getByTestId('host')).toHaveValue('user.local');
expect(screen.getByTestId('macaroon')).toHaveValue('mRXhnFyVWrRQChA9eJ01RQT9W502daqrP0JA4BiHHw89MCZGb3IgQXBwbGljYXRpb24j');
expect(screen.getByTestId('connect-url')).toHaveValue('ln-message://user.local:5001?rune=mRXhnFyVWrRQChA9eJ01RQT9W502daqrP0JA4BiHHw89MCZGb3IgQXBwbGljYXRpb24j');
expect(screen.getByTestId('rune')).toHaveValue('mRXhnFyVWrRQChA9eJ01RQT9W502daqrP0JA4BiHHw89MCZGb3IgQXBwbGljYXRpb24j');
expect(screen.getByTestId('connect-url')).toHaveValue(
'ln-message://user.local:5001?rune=mRXhnFyVWrRQChA9eJ01RQT9W502daqrP0JA4BiHHw89MCZGb3IgQXBwbGljYXRpb24j&invoiceRune=aHFhnFyVWrRQChA9eJ01RQT9W502daqrP0JA4BiHHw89MCZGb3IgQXBwbGljYXRpb2==',
);
expect(screen.getByTestId('invoice-rune')).toHaveValue('aHFhnFyVWrRQChA9eJ01RQT9W502daqrP0JA4BiHHw89MCZGb3IgQXBwbGljYXRpb2==');
expect(screen.queryByTestId('invoice-rune-spinner')).not.toBeInTheDocument();
});
Expand All @@ -41,10 +43,12 @@ describe('ConnectWallet component ', () => {

expect(screen.getByTestId('port')).toHaveValue('5001');
expect(screen.getByTestId('host')).toHaveValue('user.local');
expect(screen.getByTestId('macaroon')).toHaveValue('mRXhnFyVWrRQChA9eJ01RQT9W502daqrP0JA4BiHHw89MCZGb3IgQXBwbGljYXRpb24j');
expect(screen.getByTestId('rune')).toHaveValue('mRXhnFyVWrRQChA9eJ01RQT9W502daqrP0JA4BiHHw89MCZGb3IgQXBwbGljYXRpb24j');
expect(screen.queryByTestId('client-cert')).not.toBeInTheDocument();
expect(screen.queryByTestId('ca-cert')).not.toBeInTheDocument();
expect(screen.getByTestId('connect-url')).toHaveValue('ln-message://user.local:5001?rune=mRXhnFyVWrRQChA9eJ01RQT9W502daqrP0JA4BiHHw89MCZGb3IgQXBwbGljYXRpb24j');
expect(screen.getByTestId('connect-url')).toHaveValue(
'ln-message://user.local:5001?rune=mRXhnFyVWrRQChA9eJ01RQT9W502daqrP0JA4BiHHw89MCZGb3IgQXBwbGljYXRpb24j&invoiceRune=aHFhnFyVWrRQChA9eJ01RQT9W502daqrP0JA4BiHHw89MCZGb3IgQXBwbGljYXRpb2==',
);
expect(screen.getByTestId('invoice-rune')).toHaveValue('aHFhnFyVWrRQChA9eJ01RQT9W502daqrP0JA4BiHHw89MCZGb3IgQXBwbGljYXRpb2==');
});

Expand All @@ -58,10 +62,12 @@ describe('ConnectWallet component ', () => {

expect(screen.getByTestId('port')).toHaveValue('5001');
expect(screen.getByTestId('host')).toHaveValue('oqaer4kd7ufryngx6dsztovs4pnlmaouwmtkofjsd2m7pkq8wd.onion');
expect(screen.getByTestId('macaroon')).toHaveValue('mRXhnFyVWrRQChA9eJ01RQT9W502daqrP0JA4BiHHw89MCZGb3IgQXBwbGljYXRpb24j');
expect(screen.getByTestId('rune')).toHaveValue('mRXhnFyVWrRQChA9eJ01RQT9W502daqrP0JA4BiHHw89MCZGb3IgQXBwbGljYXRpb24j');
expect(screen.queryByTestId('client-cert')).not.toBeInTheDocument();
expect(screen.queryByTestId('ca-cert')).not.toBeInTheDocument();
expect(screen.getByTestId('connect-url')).toHaveValue('ln-message://oqaer4kd7ufryngx6dsztovs4pnlmaouwmtkofjsd2m7pkq8wd.onion:5001?rune=mRXhnFyVWrRQChA9eJ01RQT9W502daqrP0JA4BiHHw89MCZGb3IgQXBwbGljYXRpb24j');
expect(screen.getByTestId('connect-url')).toHaveValue(
'ln-message://oqaer4kd7ufryngx6dsztovs4pnlmaouwmtkofjsd2m7pkq8wd.onion:5001?rune=mRXhnFyVWrRQChA9eJ01RQT9W502daqrP0JA4BiHHw89MCZGb3IgQXBwbGljYXRpb24j&invoiceRune=aHFhnFyVWrRQChA9eJ01RQT9W502daqrP0JA4BiHHw89MCZGb3IgQXBwbGljYXRpb2==',
);
expect(screen.getByTestId('invoice-rune')).toHaveValue('aHFhnFyVWrRQChA9eJ01RQT9W502daqrP0JA4BiHHw89MCZGb3IgQXBwbGljYXRpb2==');
});

Expand All @@ -73,13 +79,14 @@ describe('ConnectWallet component ', () => {
const restNetworkItem = screen.getAllByTestId('network-item')[2];
await act(async () => fireEvent.click(restNetworkItem));

expect(screen.getByTestId('port')).toHaveValue('3001');
expect(screen.getByTestId('host')).toHaveValue('http://user.local');
expect(screen.getByTestId('macaroon')).toHaveValue('0201036c6e6402e501030a1042beb666ba043f72cb147adf3eaafc9e1201301a160a076164647265737312047265616');
expect(screen.queryByTestId('client-cert')).not.toBeInTheDocument();
expect(screen.queryByTestId('ca-cert')).not.toBeInTheDocument();
expect(screen.getByTestId('connect-url')).toHaveValue('c-lightning-rest://http://user.local:3001?macaroon=0201036c6e6402e501030a1042beb666ba043f72cb147adf3eaafc9e1201301a160a076164647265737312047265616&protocol=http');
expect(screen.queryByTestId('invoice-rune')).not.toBeInTheDocument();
expect(screen.getAllByTestId('port')[1]).toHaveValue('3001');
expect(screen.getByTestId('host')).toHaveValue('user.local');
expect(screen.queryByTestId('client-key')).toBeInTheDocument();
expect(screen.queryByTestId('client-cert')).toBeInTheDocument();
expect(screen.queryByTestId('ca-cert')).toBeInTheDocument();
expect(screen.getByTestId('connect-url')).toHaveValue(
'clnrest://https://user.local:3001?clientKey=ClientKey&clientCert=ClientCert&caCert=CACert',
);
});

it('updates selected network and input fields on network change to REST (Tor)', async () => {
Expand All @@ -90,13 +97,13 @@ describe('ConnectWallet component ', () => {
const restNetworkItem = screen.getAllByTestId('network-item')[3];
await act(async () => fireEvent.click(restNetworkItem));

expect(screen.getByTestId('port')).toHaveValue('3001');
expect(screen.getByTestId('host')).toHaveValue('http://oqaer4kd7ufryngx6dsztovs4pnlmaouwmtkofjsd2m7pkq8wd.onion');
expect(screen.getByTestId('macaroon')).toHaveValue('0201036c6e6402e501030a1042beb666ba043f72cb147adf3eaafc9e1201301a160a076164647265737312047265616');
expect(screen.queryByTestId('client-cert')).not.toBeInTheDocument();
expect(screen.queryByTestId('ca-cert')).not.toBeInTheDocument();
expect(screen.getByTestId('connect-url')).toHaveValue('c-lightning-rest://http://oqaer4kd7ufryngx6dsztovs4pnlmaouwmtkofjsd2m7pkq8wd.onion:3001?macaroon=0201036c6e6402e501030a1042beb666ba043f72cb147adf3eaafc9e1201301a160a076164647265737312047265616&protocol=http');
expect(screen.queryByTestId('invoice-rune')).not.toBeInTheDocument();
expect(screen.getAllByTestId('port')[1]).toHaveValue('3001');
expect(screen.getByTestId('host')).toHaveValue('oqaer4kd7ufryngx6dsztovs4pnlmaouwmtkofjsd2m7pkq8wd.onion');
expect(screen.queryByTestId('client-key')).toBeInTheDocument();
expect(screen.queryByTestId('client-cert')).toBeInTheDocument();
expect(screen.getByTestId('connect-url')).toHaveValue(
'clnrest://https://oqaer4kd7ufryngx6dsztovs4pnlmaouwmtkofjsd2m7pkq8wd.onion:3001?clientKey=ClientKey&clientCert=ClientCert&caCert=CACert',
);
});

it('updates selected network and input fields on network change to gRPC', async () => {
Expand All @@ -107,13 +114,12 @@ describe('ConnectWallet component ', () => {
const restNetworkItem = screen.getAllByTestId('network-item')[4];
await act(async () => fireEvent.click(restNetworkItem));

expect(screen.getByTestId('port')).toHaveValue('2106');
expect(screen.getAllByTestId('port')[1]).toHaveValue('2106');
expect(screen.getByTestId('host')).toHaveValue('user.local');
expect(screen.getByTestId('macaroon')).toHaveValue('ClientKey');
expect(screen.getByTestId('client-cert')).toHaveValue('ClientCert');
expect(screen.getByTestId('ca-cert')).toHaveValue('CACert');
expect(screen.getByTestId('connect-url')).toHaveValue('cln-grpc://user.local:2106?clientkey=ClientKey&clientCert=ClientCert&caCert=CACert');
expect(screen.queryByTestId('invoice-rune')).not.toBeInTheDocument();
expect(screen.queryByTestId('client-key')).not.toBeInTheDocument();
expect(screen.queryByTestId('client-cert')).not.toBeInTheDocument();
expect(screen.queryByTestId('ca-cert')).not.toBeInTheDocument();
expect(screen.getByTestId('connect-url')).toHaveValue('cln-grpc://http://user.local:2106');
});

it('updates selected network and input fields on network change to gRPC (Tor)', async () => {
Expand All @@ -122,14 +128,17 @@ describe('ConnectWallet component ', () => {
await act(async () => jest.advanceTimersByTime(APP_ANIMATION_DURATION * 1000));
await act(async () => fireEvent.click(screen.getByTestId('network-toggle')));
const restNetworkItem = screen.getAllByTestId('network-item')[5];
console.warn('I AM HERE');
console.warn(screen.getAllByTestId('network-item'));
await act(async () => fireEvent.click(restNetworkItem));
expect(screen.getByTestId('port')).toHaveValue('2106');
expect(screen.getAllByTestId('port')[1]).toHaveValue('2106');
expect(screen.getByTestId('host')).toHaveValue('oqaer4kd7ufryngx6dsztovs4pnlmaouwmtkofjsd2m7pkq8wd.onion');
expect(screen.getByTestId('macaroon')).toHaveValue('ClientKey');
expect(screen.getByTestId('client-cert')).toHaveValue('ClientCert');
expect(screen.queryByTestId('client-key')).not.toBeInTheDocument();
expect(screen.queryByTestId('client-cert')).not.toBeInTheDocument();
expect(screen.queryByTestId('ca-cert')).not.toBeInTheDocument();
expect(screen.getByTestId('connect-url')).toHaveValue('cln-grpc://oqaer4kd7ufryngx6dsztovs4pnlmaouwmtkofjsd2m7pkq8wd.onion:2106?clientkey=ClientKey&clientCert=ClientCert');
expect(screen.queryByTestId('invoice-rune')).not.toBeInTheDocument();
expect(screen.getByTestId('connect-url')).toHaveValue(
'cln-grpc://http://oqaer4kd7ufryngx6dsztovs4pnlmaouwmtkofjsd2m7pkq8wd.onion:2106',
);
});

it('when creating an invoice rune, display loading spinner', async () => {
Expand Down
20 changes: 10 additions & 10 deletions apps/frontend/src/components/modals/ConnectWallet/ConnectWallet.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -34,13 +34,13 @@ const ConnectWallet = () => {
let newNetworkTypes: string[] = ['LN Message', 'LN Message (Tor)'];
if (appCtx.walletConnect.LIGHTNING_REST_PORT && appCtx.walletConnect.LIGHTNING_REST_PORT !== '') {
newNetworkTypes.push('REST');
if (appCtx.walletConnect.HIDDEN_SERVICE_URL && appCtx.walletConnect.HIDDEN_SERVICE_URL !== '') {
if (appCtx.walletConnect.TOR_SERVICE && appCtx.walletConnect.TOR_SERVICE !== '') {
newNetworkTypes.push('REST (Tor)');
}
}
if (appCtx.walletConnect.LIGHTNING_GRPC_PORT && appCtx.walletConnect.LIGHTNING_GRPC_PORT !== '') {
newNetworkTypes.push('gRPC');
if (appCtx.walletConnect.HIDDEN_SERVICE_URL && appCtx.walletConnect.HIDDEN_SERVICE_URL !== '') {
if (appCtx.walletConnect.TOR_SERVICE && appCtx.walletConnect.TOR_SERVICE !== '') {
newNetworkTypes.push('gRPC (Tor)');
}
}
Expand All @@ -63,7 +63,7 @@ const ConnectWallet = () => {
textToCopy = appCtx.walletConnect.LIGHTNING_REST_PORT || '';
break;
case 'CLN Host':
textToCopy = (selNetwork.includes('(Tor)') ? appCtx.walletConnect.HIDDEN_SERVICE_URL : appCtx.walletConnect.DEVICE_DOMAIN_NAME) || '';
textToCopy = (selNetwork.includes('(Tor)') ? appCtx.walletConnect.TOR_SERVICE : appCtx.walletConnect.DEVICE_DOMAIN_NAME) || '';
break;
case 'Rune':
textToCopy = appCtx.walletConnect.COMMANDO_RUNE || '';
Expand Down Expand Up @@ -119,18 +119,18 @@ const ConnectWallet = () => {
break;

case 'LN Message (Tor)':
setConnectValues({ port: { title: 'Websocket Port', field: 'LIGHTNING_WS_PORT' }, host: { title: 'CLN Host', field: 'HIDDEN_SERVICE_URL' }, rune: { title: 'Rune', field: 'COMMANDO_RUNE' }, invoiceRune: { title: 'Invoice Rune', field: 'INVOICE_RUNE' }, connectUrl: { title: 'Lnmessage URL', field: '' } });
setConnectUrl('ln-message://' + appCtx.walletConnect.HIDDEN_SERVICE_URL + ':' + appCtx.walletConnect.LIGHTNING_WS_PORT + '?rune=' + appCtx.walletConnect.COMMANDO_RUNE + (appCtx.walletConnect.INVOICE_RUNE !== '' ? '&invoiceRune=' + appCtx.walletConnect.INVOICE_RUNE : ''));
setConnectValues({ port: { title: 'Websocket Port', field: 'LIGHTNING_WS_PORT' }, host: { title: 'CLN Host', field: 'TOR_SERVICE' }, rune: { title: 'Rune', field: 'COMMANDO_RUNE' }, invoiceRune: { title: 'Invoice Rune', field: 'INVOICE_RUNE' }, connectUrl: { title: 'Lnmessage URL', field: '' } });
setConnectUrl('ln-message://' + appCtx.walletConnect.TOR_SERVICE + ':' + appCtx.walletConnect.LIGHTNING_WS_PORT + '?rune=' + appCtx.walletConnect.COMMANDO_RUNE + (appCtx.walletConnect.INVOICE_RUNE !== '' ? '&invoiceRune=' + appCtx.walletConnect.INVOICE_RUNE : ''));
break;

case 'REST':
setConnectValues({ protocol: { title: 'REST Protocol', field: 'LIGHTNING_REST_PROTOCOL' }, host: { title: 'CLN Host', field: 'HIDDEN_SERVICE_URL' }, port: { title: 'REST Port', field: 'LIGHTNING_REST_PORT' }, clientKey: { title: 'Client Key', field: 'CLIENT_KEY' }, clientCert: { title: 'Client Cert', field: 'CLIENT_CERT' }, caCert: { title: 'CA Cert', field: 'CA_CERT' }, connectUrl: { title: 'REST URL', field: '' } });
setConnectValues({ protocol: { title: 'REST Protocol', field: 'LIGHTNING_REST_PROTOCOL' }, host: { title: 'CLN Host', field: 'DEVICE_DOMAIN_NAME' }, port: { title: 'REST Port', field: 'LIGHTNING_REST_PORT' }, clientKey: { title: 'Client Key', field: 'CLIENT_KEY' }, clientCert: { title: 'Client Cert', field: 'CLIENT_CERT' }, caCert: { title: 'CA Cert', field: 'CA_CERT' }, connectUrl: { title: 'REST URL', field: '' } });
setConnectUrl('clnrest://' + appCtx.walletConnect.LIGHTNING_REST_PROTOCOL + '://' + appCtx.walletConnect.DEVICE_DOMAIN_NAME + ':' + appCtx.walletConnect.LIGHTNING_REST_PORT + (appCtx.walletConnect.LIGHTNING_REST_PROTOCOL?.toLowerCase() === 'https' ? '?clientKey=' + appCtx.walletConnect.CLIENT_KEY + '&clientCert=' + appCtx.walletConnect.CLIENT_CERT + '&caCert=' + appCtx.walletConnect.CA_CERT : ''));
break;

case 'REST (Tor)':
setConnectValues({ protocol: { title: 'REST Protocol', field: 'LIGHTNING_REST_PROTOCOL' }, host: { title: 'CLN Host', field: 'HIDDEN_SERVICE_URL' }, port: { title: 'REST Port', field: 'LIGHTNING_REST_PORT' }, clientKey: { title: 'Client Key', field: 'CLIENT_KEY' }, clientCert: { title: 'Client Cert', field: 'CLIENT_CERT' }, caCert: { title: 'CA Cert', field: 'CA_CERT' }, connectUrl: { title: 'REST URL', field: '' } });
setConnectUrl('clnrest://' + appCtx.walletConnect.LIGHTNING_REST_PROTOCOL + '://' + appCtx.walletConnect.HIDDEN_SERVICE_URL + ':' + appCtx.walletConnect.LIGHTNING_REST_PORT + (appCtx.walletConnect.LIGHTNING_REST_PROTOCOL?.toLowerCase() === 'https' ? '?clientKey=' + appCtx.walletConnect.CLIENT_KEY + '&clientCert=' + appCtx.walletConnect.CLIENT_CERT + '&caCert=' + appCtx.walletConnect.CA_CERT : ''));
setConnectValues({ protocol: { title: 'REST Protocol', field: 'LIGHTNING_REST_PROTOCOL' }, host: { title: 'CLN Host', field: 'TOR_SERVICE' }, port: { title: 'REST Port', field: 'LIGHTNING_REST_PORT' }, clientKey: { title: 'Client Key', field: 'CLIENT_KEY' }, clientCert: { title: 'Client Cert', field: 'CLIENT_CERT' }, caCert: { title: 'CA Cert', field: 'CA_CERT' }, connectUrl: { title: 'REST URL', field: '' } });
setConnectUrl('clnrest://' + appCtx.walletConnect.LIGHTNING_REST_PROTOCOL + '://' + appCtx.walletConnect.TOR_SERVICE + ':' + appCtx.walletConnect.LIGHTNING_REST_PORT + (appCtx.walletConnect.LIGHTNING_REST_PROTOCOL?.toLowerCase() === 'https' ? '?clientKey=' + appCtx.walletConnect.CLIENT_KEY + '&clientCert=' + appCtx.walletConnect.CLIENT_CERT + '&caCert=' + appCtx.walletConnect.CA_CERT : ''));
break;

case 'gRPC':
Expand All @@ -139,8 +139,8 @@ const ConnectWallet = () => {
break;

case 'gRPC (Tor)':
setConnectValues({ protocol: { title: 'gRPC Protocol', field: 'LIGHTNING_GRPC_PROTOCOL' }, host: { title: 'CLN Host', field: 'HIDDEN_SERVICE_URL' }, port: { title: 'GRPC Port', field: 'LIGHTNING_GRPC_PORT' }, clientKey: { title: 'Client Key', field: 'CLIENT_KEY' }, clientCert: { title: 'Client Cert', field: 'CLIENT_CERT' }, caCert: { title: 'CA Cert', field: 'CA_CERT' }, connectUrl: { title: 'gRPC URL', field: '' } });
setConnectUrl('cln-grpc://' + appCtx.walletConnect.LIGHTNING_GRPC_PROTOCOL + '://' + appCtx.walletConnect.HIDDEN_SERVICE_URL + ':' + appCtx.walletConnect.LIGHTNING_GRPC_PORT + (appCtx.walletConnect.LIGHTNING_GRPC_PROTOCOL?.toLowerCase() === 'https' ? '?clientKey=' + appCtx.walletConnect.CLIENT_KEY + '&clientCert=' + appCtx.walletConnect.CLIENT_CERT + '&caCert=' + appCtx.walletConnect.CA_CERT : ''));
setConnectValues({ protocol: { title: 'gRPC Protocol', field: 'LIGHTNING_GRPC_PROTOCOL' }, host: { title: 'CLN Host', field: 'TOR_SERVICE' }, port: { title: 'GRPC Port', field: 'LIGHTNING_GRPC_PORT' }, clientKey: { title: 'Client Key', field: 'CLIENT_KEY' }, clientCert: { title: 'Client Cert', field: 'CLIENT_CERT' }, caCert: { title: 'CA Cert', field: 'CA_CERT' }, connectUrl: { title: 'gRPC URL', field: '' } });
setConnectUrl('cln-grpc://' + appCtx.walletConnect.LIGHTNING_GRPC_PROTOCOL + '://' + appCtx.walletConnect.TOR_SERVICE + ':' + appCtx.walletConnect.LIGHTNING_GRPC_PORT + (appCtx.walletConnect.LIGHTNING_GRPC_PROTOCOL?.toLowerCase() === 'https' ? '?clientKey=' + appCtx.walletConnect.CLIENT_KEY + '&clientCert=' + appCtx.walletConnect.CLIENT_CERT + '&caCert=' + appCtx.walletConnect.CA_CERT : ''));
break;

default:
Expand Down
1 change: 1 addition & 0 deletions apps/frontend/src/store/AppContext.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -411,6 +411,7 @@ const AppProvider: React.PropsWithChildren<any> = (props) => {
};

const setWalletConnectHandler = (walletConnect: WalletConnect) => {
walletConnect.TOR_SERVICE = walletConnect.HIDDEN_SERVICE_URL?.replace('https://', '').replace('http://', '');
dispatchApplicationAction({ type: ApplicationActions.SET_WALLET_CONNECT, payload: walletConnect });
};

Expand Down
1 change: 1 addition & 0 deletions apps/frontend/src/types/app-config.type.ts
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,7 @@ export type WalletConnect = {
LIGHTNING_IP?: string;
LIGHTNING_PATH?: string;
HIDDEN_SERVICE_URL?: string;
TOR_SERVICE?: string;
LIGHTNING_NODE_TYPE?: string;
COMMANDO_CONFIG?: string;
LIGHTNING_WS_PORT?: string;
Expand Down
Loading