diff --git a/README.md b/README.md index 571d9893..f59998c0 100644 --- a/README.md +++ b/README.md @@ -64,7 +64,7 @@ - APP_CONFIG_FILE: Path for cln-application's configuration file (default: `./config.json`) - APP_LOG_FILE: Path for cln-application's log file (default: `./application-cln.log`) - APP_MODE: Mode for logging and other settings (valid values: production/development/testing, default: `production`) - - APP_CONNECT: Choose how to connect to CLN (valid values: COMMANDO/REST/GRPC, default: `COMMANDO`) + - APP_CONNECT: Choose how to connect to CLN (valid values: COMMANDO/REST, default: `COMMANDO`) # Core lightning Values - LIGHTNING_HOST: IP address of Core lightning node (default: `localhost`) @@ -90,9 +90,9 @@ - LIGHTNING_REST_CA_CERT_FILE: CA certificate file path including file name for REST TLS authentication (used by `REST` APP_CONNECT and `https` LIGHTNING_REST_PROTOCOL; default: `./ca.pem`) # CLN gRPC Values - - LIGHTNING_GRPC_HOST: IP address/hostname of Core Lightning GRPC interface (used if APP_CONNECT is `GRPC`, default: `localhost`) + - LIGHTNING_GRPC_HOST: IP address/hostname of Core Lightning GRPC interface (default: `localhost`) - LIGHTNING_GRPC_TOR_HOST: Tor hidden service URL for Core Lightning GRPC interface (default: ``) - - LIGHTNING_GRPC_PORT: Core lightning's GRPC port (used if APP_CONNECT is `GRPC`; default: `9736`) + - LIGHTNING_GRPC_PORT: Core lightning's GRPC port (default: `9736`) - LIGHTNING_GRPC_PROTO_PATH: URL to directory containing CLN gRPC protocol definitions (default: `https://github.com/ElementsProject/lightning/tree/master/cln-grpc/proto`) - LIGHTNING_GRPC_CLIENT_KEY_FILE: Client key file path including file name for GRPC TLS authentication (used by `GRPC` APP_CONNECT; default: `./client-key.pem`) - LIGHTNING_GRPC_CLIENT_CERT_FILE: Client certificate file path including file name for GRPC TLS authentication (used by `GRPC` APP_CONNECT; default: `./client.pem`) diff --git a/apps/backend/source/server.ts b/apps/backend/source/server.ts index c5b9bc8e..45aa483f 100755 --- a/apps/backend/source/server.ts +++ b/apps/backend/source/server.ts @@ -130,9 +130,9 @@ async function startServer() { server.listen({ port: APP_PORT, host: APP_HOST }); } catch (err: any) { if (err.code) { - logger.error('Server Startup Error: ', err); + logger.error('Server Startup Error:', err); } else { - logger.error('Server Startup Error: ', throwApiError(err)); + logger.error('Server Startup Error:', throwApiError(err)); } process.exit(1); } diff --git a/apps/backend/source/service/lightning.service.ts b/apps/backend/source/service/lightning.service.ts index 54f1c68d..ff76e00e 100755 --- a/apps/backend/source/service/lightning.service.ts +++ b/apps/backend/source/service/lightning.service.ts @@ -3,14 +3,12 @@ import https from 'https'; import axios, { AxiosHeaders } from 'axios'; import Lnmessage from 'lnmessage'; import { GRPCError, LightningError, ValidationError } from '../models/errors.js'; -import { GRPCService } from './grpc.service.js'; import { HttpStatusCode, APP_CONSTANTS, AppConnect, LN_MESSAGE_CONFIG, REST_CONFIG, - GRPC_CONFIG, } from '../shared/consts.js'; import { logger } from '../shared/logger.js'; import { setEnvVariables, validateEnvVariables } from '../shared/utils.js'; @@ -46,8 +44,13 @@ export class LightningService { } break; case AppConnect.GRPC: - logger.info('GRPC connecting with config: ' + JSON.stringify(GRPC_CONFIG)); - this.clnService = new GRPCService(GRPC_CONFIG); + this.clnService = null; + throw new ValidationError( + HttpStatusCode.INVALID_DATA, + 'gRPC connection to the Lightning node is not supported. Please use the COMMANDO or REST options for APP_CONNECT.', + ); + // logger.info('GRPC connecting with config: ' + JSON.stringify(GRPC_CONFIG)); + // this.clnService = new GRPCService(GRPC_CONFIG); break; default: logger.info('lnMessage connecting with config: ' + JSON.stringify(LN_MESSAGE_CONFIG)); @@ -71,8 +74,13 @@ export class LightningService { return axios .post(method, methodParams, this.axiosConfig) .then((commandRes: any) => { - logger.info('REST response for ' + method + ': ' + JSON.stringify(commandRes.data)); - return Promise.resolve(commandRes.data); + logger.info( + 'REST response for ' + + method + + ': ' + + JSON.stringify(commandRes.data || commandRes.rows), + ); + return Promise.resolve(commandRes.data || commandRes.rows); }) .catch((err: any) => { logger.error('REST lightning error from ' + method + ' command'); diff --git a/apps/backend/tsconfig.json b/apps/backend/tsconfig.json index 9ced85cf..2058ee22 100644 --- a/apps/backend/tsconfig.json +++ b/apps/backend/tsconfig.json @@ -15,5 +15,5 @@ "lib": ["ES2022"] }, "files": ["./source/server.ts"], - "include": ["./source/**/*.d.ts"] + "include": ["./source/**/*.ts"] } diff --git a/apps/frontend/src/components/App/App.scss b/apps/frontend/src/components/App/App.scss index 31ae52dc..f68cbb62 100644 --- a/apps/frontend/src/components/App/App.scss +++ b/apps/frontend/src/components/App/App.scss @@ -1,5 +1,3 @@ -@import '../../styles/bootstrap-custom'; -@import '../../styles/constants'; @import '../../styles/shared'; .list-scroll-container { diff --git a/apps/frontend/src/components/App/App.tsx b/apps/frontend/src/components/App/App.tsx index 978edd3d..3d1fb506 100644 --- a/apps/frontend/src/components/App/App.tsx +++ b/apps/frontend/src/components/App/App.tsx @@ -1,4 +1,11 @@ import './App.scss'; +import '../shared/FiatBox/FiatBox.scss'; +import '../shared/CurrencyBox/CurrencyBox.scss'; +import '../shared/ToastMessage/ToastMessage.scss'; +import '../shared/InvalidInputMessage/InvalidInputMessage.scss'; +import '../shared/StatusAlert/StatusAlert.scss'; +import '../cln/Overview/Overview.scss'; + import { Container } from 'react-bootstrap'; import useBreakpoint from '../../hooks/use-breakpoint'; diff --git a/apps/frontend/src/components/bookkeeper/AccountEvents/AccountEventsGraph/AccountEventsGraph.scss b/apps/frontend/src/components/bookkeeper/AccountEvents/AccountEventsGraph/AccountEventsGraph.scss index d15a4f16..62eb7b5e 100644 --- a/apps/frontend/src/components/bookkeeper/AccountEvents/AccountEventsGraph/AccountEventsGraph.scss +++ b/apps/frontend/src/components/bookkeeper/AccountEvents/AccountEventsGraph/AccountEventsGraph.scss @@ -1,4 +1,4 @@ -@import '../../../../styles/constants.scss'; +@use '../../../../styles/constants' as *; .bkpr-tooltip { border: 1px solid $light-dark; diff --git a/apps/frontend/src/components/bookkeeper/AccountEvents/AccountEventsRoot.scss b/apps/frontend/src/components/bookkeeper/AccountEvents/AccountEventsRoot.scss index e0b1133a..1181992c 100644 --- a/apps/frontend/src/components/bookkeeper/AccountEvents/AccountEventsRoot.scss +++ b/apps/frontend/src/components/bookkeeper/AccountEvents/AccountEventsRoot.scss @@ -1,4 +1,4 @@ -@import '../../../styles/constants.scss'; +@use '../../../styles/constants' as *; .account-events-container { padding: 0 1rem; diff --git a/apps/frontend/src/components/bookkeeper/AccountEvents/AccountEventsTable/AccountEventsTable.scss b/apps/frontend/src/components/bookkeeper/AccountEvents/AccountEventsTable/AccountEventsTable.scss index 1ec2768a..331d1d12 100644 --- a/apps/frontend/src/components/bookkeeper/AccountEvents/AccountEventsTable/AccountEventsTable.scss +++ b/apps/frontend/src/components/bookkeeper/AccountEvents/AccountEventsTable/AccountEventsTable.scss @@ -1,4 +1,4 @@ -@import '../../../../styles/constants.scss'; +@use '../../../../styles/constants' as *; .account-events-table { padding: 0 !important; diff --git a/apps/frontend/src/components/bookkeeper/BkprHome/AccountEventsInfo/AccountEventsInfo.scss b/apps/frontend/src/components/bookkeeper/BkprHome/AccountEventsInfo/AccountEventsInfo.scss index aa8af854..1d5387c0 100644 --- a/apps/frontend/src/components/bookkeeper/BkprHome/AccountEventsInfo/AccountEventsInfo.scss +++ b/apps/frontend/src/components/bookkeeper/BkprHome/AccountEventsInfo/AccountEventsInfo.scss @@ -1 +1 @@ -@import '../../../../styles/constants.scss'; +@use '../../../../styles/constants' as *; diff --git a/apps/frontend/src/components/bookkeeper/BkprHome/BkprHome.scss b/apps/frontend/src/components/bookkeeper/BkprHome/BkprHome.scss index 3a19c8e1..d433805f 100644 --- a/apps/frontend/src/components/bookkeeper/BkprHome/BkprHome.scss +++ b/apps/frontend/src/components/bookkeeper/BkprHome/BkprHome.scss @@ -1,4 +1,4 @@ -@import '../../../styles/constants.scss'; +@use '../../../styles/constants' as *; [data-screensize='SM'], [data-screensize='XS'] { diff --git a/apps/frontend/src/components/bookkeeper/BkprHome/SatsFlowInfo/SatsFlowInfo.scss b/apps/frontend/src/components/bookkeeper/BkprHome/SatsFlowInfo/SatsFlowInfo.scss index 93437dcf..fbda5ab0 100644 --- a/apps/frontend/src/components/bookkeeper/BkprHome/SatsFlowInfo/SatsFlowInfo.scss +++ b/apps/frontend/src/components/bookkeeper/BkprHome/SatsFlowInfo/SatsFlowInfo.scss @@ -1,4 +1,4 @@ -@import '../../../../styles/constants.scss'; +@use '../../../../styles/constants' as *; [data-screensize='SM'], [data-screensize='XS'] { diff --git a/apps/frontend/src/components/bookkeeper/BkprHome/VolumeInfo/VolumeInfo.scss b/apps/frontend/src/components/bookkeeper/BkprHome/VolumeInfo/VolumeInfo.scss index 30a16072..e9e606d1 100644 --- a/apps/frontend/src/components/bookkeeper/BkprHome/VolumeInfo/VolumeInfo.scss +++ b/apps/frontend/src/components/bookkeeper/BkprHome/VolumeInfo/VolumeInfo.scss @@ -1,4 +1,4 @@ -@import '../../../../styles/constants.scss'; +@use '../../../../styles/constants' as *; [data-screensize='SM'], [data-screensize='XS'] { diff --git a/apps/frontend/src/components/bookkeeper/SatsFlow/SatsFlowGraph/SatsFlowGraph.scss b/apps/frontend/src/components/bookkeeper/SatsFlow/SatsFlowGraph/SatsFlowGraph.scss index 726c806f..02354eff 100644 --- a/apps/frontend/src/components/bookkeeper/SatsFlow/SatsFlowGraph/SatsFlowGraph.scss +++ b/apps/frontend/src/components/bookkeeper/SatsFlow/SatsFlowGraph/SatsFlowGraph.scss @@ -1,4 +1,4 @@ -@import '../../../../styles/constants.scss'; +@use '../../../../styles/constants' as *; .bkpr-tooltip { border: 1px solid $light-dark; @@ -8,7 +8,7 @@ box-shadow: 0px 4px 8px 0px rgba($gray-400, 0.16); } -.sats-flow-lagend-bullet { +.col-sats-flow-lagend .sats-flow-lagend-bullet { width: 12px; height: 12px; margin-right: 6px; @@ -37,4 +37,7 @@ color: $light-dark; background-color: $tooltip-bg-dark; } + .col-sats-flow-lagend .span-sats-flow-lagend { + color: $light-dark; + } } diff --git a/apps/frontend/src/components/bookkeeper/SatsFlow/SatsFlowGraph/SatsFlowGraph.tsx b/apps/frontend/src/components/bookkeeper/SatsFlow/SatsFlowGraph/SatsFlowGraph.tsx index 68d078cc..dd560361 100644 --- a/apps/frontend/src/components/bookkeeper/SatsFlow/SatsFlowGraph/SatsFlowGraph.tsx +++ b/apps/frontend/src/components/bookkeeper/SatsFlow/SatsFlowGraph/SatsFlowGraph.tsx @@ -55,9 +55,9 @@ const SatsFlowGraphLegend = (props: any) => { {payload .filter((entry: any) => entry.value !== 'net_inflow_msat') .map((entry: any, index: number) => ( -