mirror of
https://github.com/Ride-The-Lightning/RTL.git
synced 2025-02-22 14:22:48 +01:00
LND Filter by selected columns
This commit is contained in:
parent
2807a408a8
commit
c0a1472eef
17 changed files with 251 additions and 304 deletions
|
@ -131,41 +131,41 @@ export class CLNRoutingPeersComponent implements OnInit, OnChanges, AfterViewIni
|
|||
|
||||
setFilterPredicate() {
|
||||
this.routingPeersIncoming.filterPredicate = (rowDataIn: RoutingPeer, fltr: string) => {
|
||||
let rowToFilter = '';
|
||||
let rowToFilterIn = '';
|
||||
switch (this.selFilterByIn) {
|
||||
case 'all':
|
||||
rowToFilter = JSON.stringify(rowDataIn).toLowerCase();
|
||||
rowToFilterIn = JSON.stringify(rowDataIn).toLowerCase();
|
||||
break;
|
||||
|
||||
case 'total_amount':
|
||||
case 'total_fee':
|
||||
rowToFilter = ((+(rowDataIn[this.selFilterByIn] || 0)) / 1000)?.toString() || '';
|
||||
rowToFilterIn = ((+(rowDataIn[this.selFilterByIn] || 0)) / 1000)?.toString() || '';
|
||||
break;
|
||||
|
||||
default:
|
||||
rowToFilter = typeof rowDataIn[this.selFilterByIn] === 'string' ? rowDataIn[this.selFilterByIn].toLowerCase() : typeof rowDataIn[this.selFilterByIn] === 'boolean' ? (rowDataIn[this.selFilterByIn] ? 'yes' : 'no') : rowDataIn[this.selFilterByIn].toString();
|
||||
rowToFilterIn = typeof rowDataIn[this.selFilterByIn] === 'string' ? rowDataIn[this.selFilterByIn].toLowerCase() : typeof rowDataIn[this.selFilterByIn] === 'boolean' ? (rowDataIn[this.selFilterByIn] ? 'yes' : 'no') : rowDataIn[this.selFilterByIn].toString();
|
||||
break;
|
||||
}
|
||||
return rowToFilter.includes(fltr);
|
||||
return rowToFilterIn.includes(fltr);
|
||||
};
|
||||
|
||||
this.routingPeersIncoming.filterPredicate = (rowDataOut: RoutingPeer, fltr: string) => {
|
||||
let rowToFilter = '';
|
||||
this.routingPeersOutgoing.filterPredicate = (rowDataOut: RoutingPeer, fltr: string) => {
|
||||
let rowToFilterOut = '';
|
||||
switch (this.selFilterByOut) {
|
||||
case 'all':
|
||||
rowToFilter = JSON.stringify(rowDataOut).toLowerCase();
|
||||
rowToFilterOut = JSON.stringify(rowDataOut).toLowerCase();
|
||||
break;
|
||||
|
||||
case 'total_amount':
|
||||
case 'total_fee':
|
||||
rowToFilter = ((+(rowDataOut[this.selFilterByOut] || 0)) / 1000)?.toString() || '';
|
||||
rowToFilterOut = ((+(rowDataOut[this.selFilterByOut] || 0)) / 1000)?.toString() || '';
|
||||
break;
|
||||
|
||||
default:
|
||||
rowToFilter = typeof rowDataOut[this.selFilterByOut] === 'string' ? rowDataOut[this.selFilterByOut].toLowerCase() : typeof rowDataOut[this.selFilterByOut] === 'boolean' ? (rowDataOut[this.selFilterByOut] ? 'yes' : 'no') : rowDataOut[this.selFilterByOut].toString();
|
||||
rowToFilterOut = typeof rowDataOut[this.selFilterByOut] === 'string' ? rowDataOut[this.selFilterByOut].toLowerCase() : typeof rowDataOut[this.selFilterByOut] === 'boolean' ? (rowDataOut[this.selFilterByOut] ? 'yes' : 'no') : rowDataOut[this.selFilterByOut].toString();
|
||||
break;
|
||||
}
|
||||
return rowToFilter.includes(fltr);
|
||||
return rowToFilterOut.includes(fltr);
|
||||
};
|
||||
}
|
||||
|
||||
|
|
|
@ -109,31 +109,38 @@ export class ECLRoutingPeersComponent implements OnInit, AfterViewInit, OnDestro
|
|||
}
|
||||
|
||||
setFilterPredicate() {
|
||||
this.routingPeersIncoming.filterPredicate = (rowDataIn: RoutingPeers, fltr: string) => JSON.stringify(rowDataIn).toLowerCase().includes(fltr);
|
||||
this.routingPeersOutgoing.filterPredicate = (rowDataOut: RoutingPeers, fltr: string) => JSON.stringify(rowDataOut).toLowerCase().includes(fltr);
|
||||
// this.routingPeersIncoming.filterPredicate = (rowData: RoutingPeer, fltr: string) => {
|
||||
// let rowToFilter = '';
|
||||
// switch (this.selFilterBy) {
|
||||
// case 'all':
|
||||
// for (let i = 0; i < this.displayedColumns.length - 1; i++) {
|
||||
// rowToFilter = rowToFilter + (
|
||||
// (this.displayedColumns[i] === '') ?
|
||||
// (rowData ? rowData..toLowerCase() : '') :
|
||||
// (rowData[this.displayedColumns[i]] ? rowData[this.displayedColumns[i]].toLowerCase() : '')
|
||||
// ) + ', ';
|
||||
// }
|
||||
// break;
|
||||
this.routingPeersIncoming.filterPredicate = (rowDataIn: RoutingPeers, fltr: string) => {
|
||||
let rowToFilterIn = '';
|
||||
switch (this.selFilterByIn) {
|
||||
case 'all':
|
||||
rowToFilterIn = JSON.stringify(rowDataIn).toLowerCase();
|
||||
break;
|
||||
|
||||
// case '':
|
||||
// rowToFilter = rowData?..toLowerCase() || '';
|
||||
// break;
|
||||
default:
|
||||
rowToFilterIn = typeof rowDataIn[this.selFilterByIn] === 'string' ? rowDataIn[this.selFilterByIn].toLowerCase() : typeof rowDataIn[this.selFilterByIn] === 'boolean' ? (rowDataIn[this.selFilterByIn] ? 'yes' : 'no') : rowDataIn[this.selFilterByIn].toString();
|
||||
break;
|
||||
}
|
||||
return rowToFilterIn.includes(fltr);
|
||||
};
|
||||
|
||||
// default:
|
||||
// rowToFilter = typeof rowData[this.selFilterBy] === 'string' ? rowData[this.selFilterBy].toLowerCase() : typeof rowData[this.selFilterBy] === 'boolean' ? (rowData[this.selFilterBy] ? 'yes' : 'no') : rowData[this.selFilterBy].toString();
|
||||
// break;
|
||||
// }
|
||||
// return rowToFilter.includes(fltr);
|
||||
// };
|
||||
this.routingPeersOutgoing.filterPredicate = (rowDataOut: RoutingPeers, fltr: string) => {
|
||||
let rowToFilterOut = '';
|
||||
switch (this.selFilterByOut) {
|
||||
case 'all':
|
||||
rowToFilterOut = JSON.stringify(rowDataOut).toLowerCase();
|
||||
break;
|
||||
|
||||
case 'total_amount':
|
||||
case 'total_fee':
|
||||
rowToFilterOut = ((+(rowDataOut[this.selFilterByOut] || 0)) / 1000)?.toString() || '';
|
||||
break;
|
||||
|
||||
default:
|
||||
rowToFilterOut = typeof rowDataOut[this.selFilterByOut] === 'string' ? rowDataOut[this.selFilterByOut].toLowerCase() : typeof rowDataOut[this.selFilterByOut] === 'boolean' ? (rowDataOut[this.selFilterByOut] ? 'yes' : 'no') : rowDataOut[this.selFilterByOut].toString();
|
||||
break;
|
||||
}
|
||||
return rowToFilterOut.includes(fltr);
|
||||
};
|
||||
}
|
||||
|
||||
loadRoutingPeersTable(forwardingEvents: PaymentRelayed[]) {
|
||||
|
|
|
@ -130,32 +130,22 @@ export class OnChainTransactionHistoryComponent implements OnInit, OnChanges, On
|
|||
|
||||
setFilterPredicate() {
|
||||
this.listTransactions.filterPredicate = (rowData: Transaction, fltr: string) => {
|
||||
const newRowData = ((rowData.time_stamp) ? this.datePipe.transform(new Date(rowData.time_stamp * 1000), 'dd/MMM/YYYY HH:mm')?.toLowerCase() : '') + JSON.stringify(rowData).toLowerCase();
|
||||
return newRowData.includes(fltr);
|
||||
let rowToFilter = '';
|
||||
switch (this.selFilterBy) {
|
||||
case 'all':
|
||||
rowToFilter = ((rowData.time_stamp) ? this.datePipe.transform(new Date(rowData.time_stamp * 1000), 'dd/MMM/YYYY HH:mm')?.toLowerCase() : '') + JSON.stringify(rowData).toLowerCase();
|
||||
break;
|
||||
|
||||
case 'time_stamp':
|
||||
rowToFilter = this.datePipe.transform(new Date((rowData?.time_stamp || 0) * 1000), 'dd/MMM/YYYY HH:mm') || '';
|
||||
break;
|
||||
|
||||
default:
|
||||
rowToFilter = typeof rowData[this.selFilterBy] === 'string' ? rowData[this.selFilterBy].toLowerCase() : typeof rowData[this.selFilterBy] === 'boolean' ? (rowData[this.selFilterBy] ? 'yes' : 'no') : rowData[this.selFilterBy].toString();
|
||||
break;
|
||||
}
|
||||
return rowToFilter.includes(fltr);
|
||||
};
|
||||
// this.listTransactions.filterPredicate = (rowData: Transaction, fltr: string) => {
|
||||
// let rowToFilter = '';
|
||||
// switch (this.selFilterBy) {
|
||||
// case 'all':
|
||||
// for (let i = 0; i < this.displayedColumns.length - 1; i++) {
|
||||
// rowToFilter = rowToFilter + (
|
||||
// (this.displayedColumns[i] === '') ?
|
||||
// (rowData ? rowData..toLowerCase() : '') :
|
||||
// (rowData[this.displayedColumns[i]] ? rowData[this.displayedColumns[i]].toLowerCase() : '')
|
||||
// ) + ', ';
|
||||
// }
|
||||
// break;
|
||||
|
||||
// case 'time_stamp':
|
||||
// rowToFilter = rowData?..toLowerCase() || '';
|
||||
// break;
|
||||
|
||||
// default:
|
||||
// rowToFilter = typeof rowData[this.selFilterBy] === 'string' ? rowData[this.selFilterBy].toLowerCase() : typeof rowData[this.selFilterBy] === 'boolean' ? (rowData[this.selFilterBy] ? 'yes' : 'no') : rowData[this.selFilterBy].toString();
|
||||
// break;
|
||||
// }
|
||||
// return rowToFilter.includes(fltr);
|
||||
// };
|
||||
}
|
||||
|
||||
loadTransactionsTable(transactions) {
|
||||
|
|
|
@ -132,33 +132,19 @@ export class ChannelActiveHTLCsTableComponent implements OnInit, AfterViewInit,
|
|||
|
||||
setFilterPredicate() {
|
||||
this.channels.filterPredicate = (rowData: Channel, fltr: string) => {
|
||||
const rowToFilter = (rowData.remote_alias ? rowData.remote_alias.toLowerCase() : '') +
|
||||
rowData.pending_htlcs?.map((htlc) => JSON.stringify(htlc) + (htlc.incoming ? 'yes' : 'no'));
|
||||
let rowToFilter = '';
|
||||
switch (this.selFilterBy) {
|
||||
case 'all':
|
||||
rowToFilter = (rowData.remote_alias ? rowData.remote_alias.toLowerCase() : '') +
|
||||
rowData.pending_htlcs?.map((htlc) => JSON.stringify(htlc) + (htlc.incoming ? 'yes' : 'no'));
|
||||
break;
|
||||
|
||||
default:
|
||||
rowToFilter = typeof rowData[this.selFilterBy] === 'string' ? rowData[this.selFilterBy].toLowerCase() : typeof rowData[this.selFilterBy] === 'boolean' ? (rowData[this.selFilterBy] ? 'yes' : 'no') : rowData[this.selFilterBy].toString();
|
||||
break;
|
||||
}
|
||||
return rowToFilter.includes(fltr);
|
||||
};
|
||||
// this.channels.filterPredicate = (rowData: Channel, fltr: string) => {
|
||||
// let rowToFilter = '';
|
||||
// switch (this.selFilterBy) {
|
||||
// case 'all':
|
||||
// for (let i = 0; i < this.displayedColumns.length - 1; i++) {
|
||||
// rowToFilter = rowToFilter + (
|
||||
// (this.displayedColumns[i] === '') ?
|
||||
// (rowData ? rowData..toLowerCase() : '') :
|
||||
// (rowData[this.displayedColumns[i]] ? rowData[this.displayedColumns[i]].toLowerCase() : '')
|
||||
// ) + ', ';
|
||||
// }
|
||||
// break;
|
||||
|
||||
// case '':
|
||||
// rowToFilter = rowData?..toLowerCase() || '';
|
||||
// break;
|
||||
|
||||
// default:
|
||||
// rowToFilter = typeof rowData[this.selFilterBy] === 'string' ? rowData[this.selFilterBy].toLowerCase() : typeof rowData[this.selFilterBy] === 'boolean' ? (rowData[this.selFilterBy] ? 'yes' : 'no') : rowData[this.selFilterBy].toString();
|
||||
// break;
|
||||
// }
|
||||
// return rowToFilter.includes(fltr);
|
||||
// };
|
||||
}
|
||||
|
||||
loadHTLCsTable(channels: Channel[]) {
|
||||
|
|
|
@ -20,7 +20,7 @@
|
|||
<td mat-cell *matCellDef="let channel">
|
||||
<div fxLayout="row" fxLayoutAlign="start center">
|
||||
<mat-icon [matTooltip]="channelClosureType[channel.close_type].tooltip" class="info-icon info-icon-text">info_outline</mat-icon>
|
||||
{{channelClosureType[channel.close_type].name}}
|
||||
{{channelClosureType[channel.close_type].name}}
|
||||
</div>
|
||||
</td>
|
||||
</ng-container>
|
||||
|
|
|
@ -105,30 +105,28 @@ export class ChannelClosedTableComponent implements OnInit, AfterViewInit, OnDes
|
|||
}
|
||||
|
||||
setFilterPredicate() {
|
||||
this.closedChannels.filterPredicate = (rowData: ClosedChannel, fltr: string) => JSON.stringify(rowData).toLowerCase().includes(fltr);
|
||||
// this.closedChannels.filterPredicate = (rowData: ClosedChannel, fltr: string) => {
|
||||
// let rowToFilter = '';
|
||||
// switch (this.selFilterBy) {
|
||||
// case 'all':
|
||||
// for (let i = 0; i < this.displayedColumns.length - 1; i++) {
|
||||
// rowToFilter = rowToFilter + (
|
||||
// (this.displayedColumns[i] === '') ?
|
||||
// (rowData ? rowData..toLowerCase() : '') :
|
||||
// (rowData[this.displayedColumns[i]] ? rowData[this.displayedColumns[i]].toLowerCase() : '')
|
||||
// ) + ', ';
|
||||
// }
|
||||
// break;
|
||||
this.closedChannels.filterPredicate = (rowData: ClosedChannel, fltr: string) => {
|
||||
let rowToFilter = '';
|
||||
switch (this.selFilterBy) {
|
||||
case 'all':
|
||||
rowToFilter = JSON.stringify(rowData).toLowerCase();
|
||||
break;
|
||||
|
||||
// case '':
|
||||
// rowToFilter = rowData?..toLowerCase() || '';
|
||||
// break;
|
||||
case 'close_type':
|
||||
rowToFilter = (rowData.close_type && this.channelClosureType[rowData.close_type] && this.channelClosureType[rowData.close_type].name ? this.channelClosureType[rowData.close_type].name.toLowerCase() : '');
|
||||
break;
|
||||
|
||||
// default:
|
||||
// rowToFilter = typeof rowData[this.selFilterBy] === 'string' ? rowData[this.selFilterBy].toLowerCase() : typeof rowData[this.selFilterBy] === 'boolean' ? (rowData[this.selFilterBy] ? 'yes' : 'no') : rowData[this.selFilterBy].toString();
|
||||
// break;
|
||||
// }
|
||||
// return rowToFilter.includes(fltr);
|
||||
// };
|
||||
case 'open_initiator':
|
||||
case 'close_initiator':
|
||||
rowToFilter = this.camelCaseWithReplace.transform((rowData[this.selFilterBy] || ''), 'initiator_');
|
||||
break;
|
||||
|
||||
default:
|
||||
rowToFilter = typeof rowData[this.selFilterBy] === 'string' ? rowData[this.selFilterBy].toLowerCase() : typeof rowData[this.selFilterBy] === 'boolean' ? (rowData[this.selFilterBy] ? 'yes' : 'no') : rowData[this.selFilterBy].toString();
|
||||
break;
|
||||
}
|
||||
return rowToFilter.includes(fltr);
|
||||
};
|
||||
}
|
||||
|
||||
onClosedChannelClick(selChannel: ClosedChannel, event: any) {
|
||||
|
|
|
@ -33,7 +33,7 @@
|
|||
<th mat-header-cell *matHeaderCellDef mat-sort-header>Peer</th>
|
||||
<td mat-cell *matCellDef="let channel">
|
||||
<div class="ellipsis-parent" [ngStyle]="{'width': (screenSize === screenSizeEnum.XS) ? '10rem' : colWidth}">
|
||||
<span class="ellipsis-child">{{channel.remote_alias || channel.remote_pubkey}}</span>
|
||||
<span class="ellipsis-child">{{channel.remote_alias}}</span>
|
||||
</div>
|
||||
</td>
|
||||
</ng-container>
|
||||
|
@ -69,11 +69,11 @@
|
|||
<th mat-header-cell *matHeaderCellDef mat-sort-header>Static Remote Key</th>
|
||||
<td mat-cell *matCellDef="let channel">{{channel.static_remote_key ? 'Yes' : 'No'}}</td>
|
||||
</ng-container>
|
||||
<ng-container matColumnDef="uptime">
|
||||
<ng-container matColumnDef="uptime_str">
|
||||
<th mat-header-cell *matHeaderCellDef mat-sort-header arrowPosition="before">Uptime ({{timeUnit}})</th>
|
||||
<td mat-cell *matCellDef="let channel"><span fxLayoutAlign="end center">{{channel.uptime_str}} </span></td>
|
||||
</ng-container>
|
||||
<ng-container matColumnDef="lifetime">
|
||||
<ng-container matColumnDef="lifetime_str">
|
||||
<th mat-header-cell *matHeaderCellDef mat-sort-header arrowPosition="before">Lifetime ({{timeUnit}})</th>
|
||||
<td mat-cell *matCellDef="let channel"><span fxLayoutAlign="end center">{{channel.lifetime_str}} </span></td>
|
||||
</ng-container>
|
||||
|
|
|
@ -318,45 +318,31 @@ export class ChannelOpenTableComponent implements OnInit, AfterViewInit, OnDestr
|
|||
|
||||
setFilterPredicate() {
|
||||
this.channels.filterPredicate = (rowData: Channel, fltr: string) => {
|
||||
const rowToFilter = ((rowData.active) ? 'active' : 'inactive') + (rowData.chan_id ? rowData.chan_id.toLowerCase() : '') +
|
||||
(rowData.remote_pubkey ? rowData.remote_pubkey.toLowerCase() : '') + (rowData.remote_alias ? rowData.remote_alias.toLowerCase() : '') +
|
||||
(rowData.capacity ? rowData.capacity : '') + (rowData.local_balance ? rowData.local_balance : '') +
|
||||
(rowData.remote_balance ? rowData.remote_balance : '') + (rowData.total_satoshis_sent ? rowData.total_satoshis_sent : '') +
|
||||
(rowData.total_satoshis_received ? rowData.total_satoshis_received : '') + (rowData.commit_fee ? rowData.commit_fee : '') +
|
||||
(rowData.private ? 'private' : 'public');
|
||||
return rowToFilter.includes(fltr);
|
||||
let rowToFilter = '';
|
||||
switch (this.selFilterBy) {
|
||||
case 'all':
|
||||
rowToFilter = ((rowData.active) ? 'active' : 'inactive') + (rowData.chan_id ? rowData.chan_id.toLowerCase() : '') +
|
||||
(rowData.remote_pubkey ? rowData.remote_pubkey.toLowerCase() : '') + (rowData.remote_alias ? rowData.remote_alias.toLowerCase() : '') +
|
||||
(rowData.capacity ? rowData.capacity : '') + (rowData.local_balance ? rowData.local_balance : '') +
|
||||
(rowData.remote_balance ? rowData.remote_balance : '') + (rowData.total_satoshis_sent ? rowData.total_satoshis_sent : '') +
|
||||
(rowData.total_satoshis_received ? rowData.total_satoshis_received : '') + (rowData.commit_fee ? rowData.commit_fee : '') +
|
||||
(rowData.private ? 'private' : 'public');
|
||||
break;
|
||||
|
||||
case 'active':
|
||||
rowToFilter = rowData?.active ? 'active' : 'inactive';
|
||||
break;
|
||||
|
||||
case 'private':
|
||||
rowToFilter = rowData?.private ? 'private' : 'public';
|
||||
break;
|
||||
|
||||
default:
|
||||
rowToFilter = typeof rowData[this.selFilterBy] === 'string' ? rowData[this.selFilterBy].toLowerCase() : typeof rowData[this.selFilterBy] === 'boolean' ? (rowData[this.selFilterBy] ? 'yes' : 'no') : rowData[this.selFilterBy].toString();
|
||||
break;
|
||||
}
|
||||
return this.selFilterBy === 'active' ? rowToFilter.indexOf(fltr) === 0 : rowToFilter.includes(fltr);
|
||||
};
|
||||
// this.channels.filterPredicate = (rowData: Channel, fltr: string) => {
|
||||
// let rowToFilter = '';
|
||||
// switch (this.selFilterBy) {
|
||||
// case 'all':
|
||||
// for (let i = 0; i < this.displayedColumns.length - 1; i++) {
|
||||
// rowToFilter = rowToFilter + (
|
||||
// (this.displayedColumns[i] === '') ?
|
||||
// (rowData ? rowData..toLowerCase() : '') :
|
||||
// (rowData[this.displayedColumns[i]] ? rowData[this.displayedColumns[i]].toLowerCase() : '')
|
||||
// ) + ', ';
|
||||
// }
|
||||
// break;
|
||||
|
||||
// case 'active':
|
||||
// rowToFilter = rowData?.active ? 'active' : 'inactive';
|
||||
// break;
|
||||
|
||||
// case 'private':
|
||||
// rowToFilter = rowData?.private ? 'private' : 'public';
|
||||
// break;
|
||||
|
||||
// case '':
|
||||
// rowToFilter = rowData?..toLowerCase() || '';
|
||||
// break;
|
||||
|
||||
// default:
|
||||
// rowToFilter = typeof rowData[this.selFilterBy] === 'string' ? rowData[this.selFilterBy].toLowerCase() : typeof rowData[this.selFilterBy] === 'boolean' ? (rowData[this.selFilterBy] ? 'yes' : 'no') : rowData[this.selFilterBy].toString();
|
||||
// break;
|
||||
// }
|
||||
// return this.selFilterBy === 'active' ? rowToFilter.indexOf(fltr) === 0 : rowToFilter.includes(fltr);
|
||||
// };
|
||||
}
|
||||
|
||||
loadChannelsTable(mychannels: Channel[]) {
|
||||
|
|
|
@ -186,30 +186,23 @@ export class PeersComponent implements OnInit, AfterViewInit, OnDestroy {
|
|||
}
|
||||
|
||||
setFilterPredicate() {
|
||||
this.peers.filterPredicate = (rowData: Peer, fltr: string) => JSON.stringify(rowData).toLowerCase().includes(fltr);
|
||||
// this.peers.filterPredicate = (rowData: Peer, fltr: string) => {
|
||||
// let rowToFilter = '';
|
||||
// switch (this.selFilterBy) {
|
||||
// case 'all':
|
||||
// for (let i = 0; i < this.displayedColumns.length - 1; i++) {
|
||||
// rowToFilter = rowToFilter + (
|
||||
// (this.displayedColumns[i] === '') ?
|
||||
// (rowData ? rowData..toLowerCase() : '') :
|
||||
// (rowData[this.displayedColumns[i]] ? rowData[this.displayedColumns[i]].toLowerCase() : '')
|
||||
// ) + ', ';
|
||||
// }
|
||||
// break;
|
||||
this.peers.filterPredicate = (rowData: Peer, fltr: string) => {
|
||||
let rowToFilter = '';
|
||||
switch (this.selFilterBy) {
|
||||
case 'all':
|
||||
rowToFilter = JSON.stringify(rowData).toLowerCase();
|
||||
break;
|
||||
|
||||
// case '':
|
||||
// rowToFilter = rowData?..toLowerCase() || '';
|
||||
// break;
|
||||
case 'sync_type':
|
||||
rowToFilter = this.camelCaseWithReplace.transform((rowData.sync_type || ''), 'sync', '_');
|
||||
break;
|
||||
|
||||
// default:
|
||||
// rowToFilter = typeof rowData[this.selFilterBy] === 'string' ? rowData[this.selFilterBy].toLowerCase() : typeof rowData[this.selFilterBy] === 'boolean' ? (rowData[this.selFilterBy] ? 'yes' : 'no') : rowData[this.selFilterBy].toString();
|
||||
// break;
|
||||
// }
|
||||
// return rowToFilter.includes(fltr);
|
||||
// };
|
||||
default:
|
||||
rowToFilter = typeof rowData[this.selFilterBy] === 'string' ? rowData[this.selFilterBy].toLowerCase() : typeof rowData[this.selFilterBy] === 'boolean' ? (rowData[this.selFilterBy] ? 'yes' : 'no') : rowData[this.selFilterBy].toString();
|
||||
break;
|
||||
}
|
||||
return rowToFilter.includes(fltr);
|
||||
};
|
||||
}
|
||||
|
||||
loadPeersTable(peers: Peer[]) {
|
||||
|
|
|
@ -147,32 +147,22 @@ export class ForwardingHistoryComponent implements OnInit, AfterViewInit, OnChan
|
|||
|
||||
setFilterPredicate() {
|
||||
this.forwardingHistoryEvents.filterPredicate = (rowData: ForwardingEvent, fltr: string) => {
|
||||
const newRowData = ((rowData.timestamp) ? this.datePipe.transform(new Date(rowData.timestamp * 1000), 'dd/MMM/YYYY HH:mm')?.toLowerCase() : '') + JSON.stringify(rowData).toLowerCase();
|
||||
return newRowData.includes(fltr);
|
||||
let rowToFilter = '';
|
||||
switch (this.selFilterBy) {
|
||||
case 'all':
|
||||
rowToFilter = ((rowData.timestamp) ? this.datePipe.transform(new Date(rowData.timestamp * 1000), 'dd/MMM/YYYY HH:mm')?.toLowerCase() : '') + JSON.stringify(rowData).toLowerCase();
|
||||
break;
|
||||
|
||||
case 'timestamp':
|
||||
rowToFilter = this.datePipe.transform(new Date((rowData[this.selFilterBy] || 0) * 1000), 'dd/MMM/YYYY HH:mm')?.toLowerCase() || '';
|
||||
break;
|
||||
|
||||
default:
|
||||
rowToFilter = typeof rowData[this.selFilterBy] === 'string' ? rowData[this.selFilterBy].toLowerCase() : typeof rowData[this.selFilterBy] === 'boolean' ? (rowData[this.selFilterBy] ? 'yes' : 'no') : rowData[this.selFilterBy].toString();
|
||||
break;
|
||||
}
|
||||
return rowToFilter.includes(fltr);
|
||||
};
|
||||
// this.forwardingHistoryEvents.filterPredicate = (rowData: ForwardingEvent, fltr: string) => {
|
||||
// let rowToFilter = '';
|
||||
// switch (this.selFilterBy) {
|
||||
// case 'all':
|
||||
// for (let i = 0; i < this.displayedColumns.length - 1; i++) {
|
||||
// rowToFilter = rowToFilter + (
|
||||
// (this.displayedColumns[i] === '') ?
|
||||
// (rowData ? rowData..toLowerCase() : '') :
|
||||
// (rowData[this.displayedColumns[i]] ? rowData[this.displayedColumns[i]].toLowerCase() : '')
|
||||
// ) + ', ';
|
||||
// }
|
||||
// break;
|
||||
|
||||
// case '':
|
||||
// rowToFilter = rowData?..toLowerCase() || '';
|
||||
// break;
|
||||
|
||||
// default:
|
||||
// rowToFilter = typeof rowData[this.selFilterBy] === 'string' ? rowData[this.selFilterBy].toLowerCase() : typeof rowData[this.selFilterBy] === 'boolean' ? (rowData[this.selFilterBy] ? 'yes' : 'no') : rowData[this.selFilterBy].toString();
|
||||
// break;
|
||||
// }
|
||||
// return rowToFilter.includes(fltr);
|
||||
// };
|
||||
}
|
||||
|
||||
loadForwardingEventsTable(forwardingEvents: ForwardingEvent[]) {
|
||||
|
|
|
@ -49,11 +49,11 @@
|
|||
</div>
|
||||
</td>
|
||||
</ng-container>
|
||||
<ng-container matColumnDef="uptime">
|
||||
<ng-container matColumnDef="uptime_str">
|
||||
<th mat-header-cell *matHeaderCellDef mat-sort-header arrowPosition="before">Uptime ({{timeUnit}})</th>
|
||||
<td mat-cell *matCellDef="let nonRPeer"><span fxLayoutAlign="end center">{{nonRPeer.uptime_str}} </span></td>
|
||||
</ng-container>
|
||||
<ng-container matColumnDef="lifetime">
|
||||
<ng-container matColumnDef="lifetime_str">
|
||||
<th mat-header-cell *matHeaderCellDef mat-sort-header arrowPosition="before">Lifetime ({{timeUnit}})</th>
|
||||
<td mat-cell *matCellDef="let nonRPeer"><span fxLayoutAlign="end center">{{nonRPeer.lifetime_str}} </span></td>
|
||||
</ng-container>
|
||||
|
|
|
@ -199,30 +199,19 @@ export class NonRoutingPeersComponent implements OnInit, AfterViewInit, OnDestro
|
|||
}
|
||||
|
||||
setFilterPredicate() {
|
||||
this.nonRoutingPeers.filterPredicate = (rowData: Channel, fltr: string) => JSON.stringify(rowData).toLowerCase().includes(fltr);
|
||||
// this.peers.filterPredicate = (rowData: Peer, fltr: string) => {
|
||||
// let rowToFilter = '';
|
||||
// switch (this.selFilterBy) {
|
||||
// case 'all':
|
||||
// for (let i = 0; i < this.displayedColumns.length - 1; i++) {
|
||||
// rowToFilter = rowToFilter + (
|
||||
// (this.displayedColumns[i] === '') ?
|
||||
// (rowData ? rowData..toLowerCase() : '') :
|
||||
// (rowData[this.displayedColumns[i]] ? rowData[this.displayedColumns[i]].toLowerCase() : '')
|
||||
// ) + ', ';
|
||||
// }
|
||||
// break;
|
||||
this.nonRoutingPeers.filterPredicate = (rowData: Channel, fltr: string) => {
|
||||
let rowToFilter = '';
|
||||
switch (this.selFilterBy) {
|
||||
case 'all':
|
||||
rowToFilter = JSON.stringify(rowData).toLowerCase();
|
||||
break;
|
||||
|
||||
// case '':
|
||||
// rowToFilter = rowData?..toLowerCase() || '';
|
||||
// break;
|
||||
|
||||
// default:
|
||||
// rowToFilter = typeof rowData[this.selFilterBy] === 'string' ? rowData[this.selFilterBy].toLowerCase() : typeof rowData[this.selFilterBy] === 'boolean' ? (rowData[this.selFilterBy] ? 'yes' : 'no') : rowData[this.selFilterBy].toString();
|
||||
// break;
|
||||
// }
|
||||
// return rowToFilter.includes(fltr);
|
||||
// };
|
||||
default:
|
||||
rowToFilter = typeof rowData[this.selFilterBy] === 'string' ? rowData[this.selFilterBy].toLowerCase() : typeof rowData[this.selFilterBy] === 'boolean' ? (rowData[this.selFilterBy] ? 'yes' : 'no') : rowData[this.selFilterBy].toString();
|
||||
break;
|
||||
}
|
||||
return rowToFilter.includes(fltr);
|
||||
};
|
||||
}
|
||||
|
||||
loadNonRoutingPeersTable(forwardingEvents: ForwardingEvent[]) {
|
||||
|
|
|
@ -138,31 +138,38 @@ export class RoutingPeersComponent implements OnInit, AfterViewInit, OnDestroy {
|
|||
}
|
||||
|
||||
setFilterPredicate() {
|
||||
this.routingPeersIncoming.filterPredicate = (rowDataIn: RoutingPeers, fltr: string) => JSON.stringify(rowDataIn).toLowerCase().includes(fltr);
|
||||
this.routingPeersOutgoing.filterPredicate = (rowDataOut: RoutingPeers, fltr: string) => JSON.stringify(rowDataOut).toLowerCase().includes(fltr);
|
||||
// this.routingPeersIncoming.filterPredicate = (rowData: RoutingPeer, fltr: string) => {
|
||||
// let rowToFilter = '';
|
||||
// switch (this.selFilterBy) {
|
||||
// case 'all':
|
||||
// for (let i = 0; i < this.displayedColumns.length - 1; i++) {
|
||||
// rowToFilter = rowToFilter + (
|
||||
// (this.displayedColumns[i] === '') ?
|
||||
// (rowData ? rowData..toLowerCase() : '') :
|
||||
// (rowData[this.displayedColumns[i]] ? rowData[this.displayedColumns[i]].toLowerCase() : '')
|
||||
// ) + ', ';
|
||||
// }
|
||||
// break;
|
||||
this.routingPeersIncoming.filterPredicate = (rowDataIn: RoutingPeers, fltr: string) => {
|
||||
let rowToFilterIn = '';
|
||||
switch (this.selFilterByIn) {
|
||||
case 'all':
|
||||
rowToFilterIn = JSON.stringify(rowDataIn).toLowerCase();
|
||||
break;
|
||||
|
||||
// case '':
|
||||
// rowToFilter = rowData?..toLowerCase() || '';
|
||||
// break;
|
||||
default:
|
||||
rowToFilterIn = typeof rowDataIn[this.selFilterByIn] === 'string' ? rowDataIn[this.selFilterByIn].toLowerCase() : typeof rowDataIn[this.selFilterByIn] === 'boolean' ? (rowDataIn[this.selFilterByIn] ? 'yes' : 'no') : rowDataIn[this.selFilterByIn].toString();
|
||||
break;
|
||||
}
|
||||
return rowToFilterIn.includes(fltr);
|
||||
};
|
||||
|
||||
// default:
|
||||
// rowToFilter = typeof rowData[this.selFilterBy] === 'string' ? rowData[this.selFilterBy].toLowerCase() : typeof rowData[this.selFilterBy] === 'boolean' ? (rowData[this.selFilterBy] ? 'yes' : 'no') : rowData[this.selFilterBy].toString();
|
||||
// break;
|
||||
// }
|
||||
// return rowToFilter.includes(fltr);
|
||||
// };
|
||||
this.routingPeersOutgoing.filterPredicate = (rowDataOut: RoutingPeers, fltr: string) => {
|
||||
let rowToFilterOut = '';
|
||||
switch (this.selFilterByOut) {
|
||||
case 'all':
|
||||
rowToFilterOut = JSON.stringify(rowDataOut).toLowerCase();
|
||||
break;
|
||||
|
||||
case 'total_amount':
|
||||
case 'total_fee':
|
||||
rowToFilterOut = ((+(rowDataOut[this.selFilterByOut] || 0)) / 1000)?.toString() || '';
|
||||
break;
|
||||
|
||||
default:
|
||||
rowToFilterOut = typeof rowDataOut[this.selFilterByOut] === 'string' ? rowDataOut[this.selFilterByOut].toLowerCase() : typeof rowDataOut[this.selFilterByOut] === 'boolean' ? (rowDataOut[this.selFilterByOut] ? 'yes' : 'no') : rowDataOut[this.selFilterByOut].toString();
|
||||
break;
|
||||
}
|
||||
return rowToFilterOut.includes(fltr);
|
||||
};
|
||||
}
|
||||
|
||||
loadRoutingPeersTable(forwardingEvents: ForwardingEvent[]) {
|
||||
|
|
|
@ -42,7 +42,7 @@
|
|||
<span *ngIf="invoice?.state === 'OPEN'" class="dot grey" matTooltip="Open" matTooltipPosition="right" [ngClass]="{'mr-0': screenSize === screenSizeEnum.XS}"></span>
|
||||
<span *ngIf="invoice?.state === 'SETTLED'" class="dot green" matTooltip="Settled" matTooltipPosition="right" [ngClass]="{'mr-0': screenSize === screenSizeEnum.XS}"></span>
|
||||
<span *ngIf="invoice?.state === 'ACCEPTED'" class="dot yellow" matTooltip="Accepted" matTooltipPosition="right" [ngClass]="{'mr-0': screenSize === screenSizeEnum.XS}"></span>
|
||||
<span *ngIf="invoice?.state === 'CANCELED'" class="dot red" matTooltip="Cancelled" matTooltipPosition="right" [ngClass]="{'mr-0': screenSize === screenSizeEnum.XS}"></span>
|
||||
<span *ngIf="invoice?.state === 'CANCELED'" class="dot red" matTooltip="Canceled" matTooltipPosition="right" [ngClass]="{'mr-0': screenSize === screenSizeEnum.XS}"></span>
|
||||
</ng-container>
|
||||
<ng-container matColumnDef="private">
|
||||
<th mat-header-cell *matHeaderCellDef mat-sort-header arrowPosition="before" matTooltip="Private"></th>
|
||||
|
@ -54,7 +54,7 @@
|
|||
<ng-container matColumnDef="is_keysend">
|
||||
<th mat-header-cell *matHeaderCellDef mat-sort-header arrowPosition="before" matTooltip="Keysend"></th>
|
||||
<td mat-cell *matCellDef="let invoice">
|
||||
<span *ngIf="invoice.is_keysend" class="mr-1" matTooltip="Keysend" matTooltipPosition="right"><fa-icon [icon]="faArrowsTurnToDots"></fa-icon></span>
|
||||
<span *ngIf="invoice.is_keysend" class="mr-1" matTooltip="Keysend Invoices" matTooltipPosition="right"><fa-icon [icon]="faArrowsTurnToDots"></fa-icon></span>
|
||||
<span *ngIf="!invoice.is_keysend" class="mr-1" matTooltip="Non Keysend Invoices" matTooltipPosition="right"><fa-icon [icon]="faArrowsTurnRight"></fa-icon></span>
|
||||
</td>
|
||||
</ng-container>
|
||||
|
@ -62,7 +62,7 @@
|
|||
<th mat-header-cell *matHeaderCellDef mat-sort-header arrowPosition="before" matTooltip="AMP"></th>
|
||||
<td mat-cell *matCellDef="let invoice">
|
||||
<span *ngIf="!invoice.is_amp" class="mr-1" matTooltip="Non Atomic Payment" matTooltipPosition="right"><fa-icon [icon]="faMoneyBill1"></fa-icon></span>
|
||||
<span *ngIf="invoice.is_amp" class="mr-1" matTooltip="Atomic Multi-path Payment" matTooltipPosition="right"><fa-icon [icon]="faBurst"></fa-icon></span>
|
||||
<span *ngIf="invoice.is_amp" class="mr-1" matTooltip="Atomic Multi Path Payment" matTooltipPosition="right"><fa-icon [icon]="faBurst"></fa-icon></span>
|
||||
</td>
|
||||
</ng-container>
|
||||
<ng-container matColumnDef="creation_date">
|
||||
|
|
|
@ -184,33 +184,36 @@ export class LightningInvoicesComponent implements OnInit, AfterViewInit, OnDest
|
|||
|
||||
setFilterPredicate() {
|
||||
this.invoices.filterPredicate = (rowData: Invoice, fltr: string) => {
|
||||
const rowToFilter = (rowData.creation_date ? this.datePipe.transform(new Date(rowData.creation_date * 1000), 'dd/MMM/YYYY HH:mm')?.toLowerCase() : '')! +
|
||||
(rowData.settle_date ? this.datePipe.transform(new Date(rowData.settle_date * 1000), 'dd/MMM/YYYY HH:mm')?.toLowerCase() : '') + JSON.stringify(rowData).toLowerCase();
|
||||
return rowToFilter.includes(fltr);
|
||||
let rowToFilter = '';
|
||||
switch (this.selFilterBy) {
|
||||
case 'all':
|
||||
rowToFilter = (rowData.creation_date ? this.datePipe.transform(new Date(rowData.creation_date * 1000), 'dd/MMM/YYYY HH:mm')?.toLowerCase() : '')! +
|
||||
(rowData.settle_date ? this.datePipe.transform(new Date(rowData.settle_date * 1000), 'dd/MMM/YYYY HH:mm')?.toLowerCase() : '') + JSON.stringify(rowData).toLowerCase();
|
||||
break;
|
||||
|
||||
case 'creation_date':
|
||||
case 'settle_date':
|
||||
rowToFilter = this.datePipe.transform(new Date((rowData[this.selFilterBy] || 0) * 1000), 'dd/MMM/YYYY HH:mm')?.toLowerCase() || '';
|
||||
break;
|
||||
|
||||
case 'private':
|
||||
rowToFilter = rowData?.private ? 'private' : 'public';
|
||||
break;
|
||||
|
||||
case 'is_keysend':
|
||||
rowToFilter = rowData?.is_keysend ? 'keysend invoices' : 'non keysend invoices';
|
||||
break;
|
||||
|
||||
case 'is_amp':
|
||||
rowToFilter = rowData?.is_amp ? 'atomic multi path payment' : 'non atomic payment';
|
||||
break;
|
||||
|
||||
default:
|
||||
rowToFilter = typeof rowData[this.selFilterBy] === 'string' ? rowData[this.selFilterBy].toLowerCase() : typeof rowData[this.selFilterBy] === 'boolean' ? (rowData[this.selFilterBy] ? 'yes' : 'no') : rowData[this.selFilterBy].toString();
|
||||
break;
|
||||
}
|
||||
return (this.selFilterBy === 'is_keysend' || this.selFilterBy === 'is_amp') ? rowToFilter.indexOf(fltr) === 0 : rowToFilter.includes(fltr);
|
||||
};
|
||||
// this.invoices.filterPredicate = (rowData: Invoice, fltr: string) => {
|
||||
// let rowToFilter = '';
|
||||
// switch (this.selFilterBy) {
|
||||
// case 'all':
|
||||
// for (let i = 0; i < this.displayedColumns.length - 1; i++) {
|
||||
// rowToFilter = rowToFilter + (
|
||||
// (this.displayedColumns[i] === '') ?
|
||||
// (rowData ? rowData..toLowerCase() : '') :
|
||||
// (rowData[this.displayedColumns[i]] ? rowData[this.displayedColumns[i]].toLowerCase() : '')
|
||||
// ) + ', ';
|
||||
// }
|
||||
// break;
|
||||
|
||||
// case '':
|
||||
// rowToFilter = rowData?..toLowerCase() || '';
|
||||
// break;
|
||||
|
||||
// default:
|
||||
// rowToFilter = typeof rowData[this.selFilterBy] === 'string' ? rowData[this.selFilterBy].toLowerCase() : typeof rowData[this.selFilterBy] === 'boolean' ? (rowData[this.selFilterBy] ? 'yes' : 'no') : rowData[this.selFilterBy].toString();
|
||||
// break;
|
||||
// }
|
||||
// return rowToFilter.includes(fltr);
|
||||
// };
|
||||
}
|
||||
|
||||
loadInvoicesTable(invoices) {
|
||||
|
|
|
@ -441,36 +441,34 @@ export class LightningPaymentsComponent implements OnInit, AfterViewInit, OnDest
|
|||
|
||||
setFilterPredicate() {
|
||||
this.payments.filterPredicate = (rowData: Payment, fltr: string) => {
|
||||
const rowToFilter = ((rowData.creation_date) ? this.datePipe.transform(new Date(rowData.creation_date * 1000), 'dd/MMM/YYYY HH:mm')?.toLowerCase() : '') + JSON.stringify(rowData).toLowerCase();
|
||||
let rowToFilter = '';
|
||||
switch (this.selFilterBy) {
|
||||
case 'all':
|
||||
rowToFilter = ((rowData.creation_date) ? this.datePipe.transform(new Date(rowData.creation_date * 1000), 'dd/MMM/YYYY HH:mm')?.toLowerCase() : '') + JSON.stringify(rowData).toLowerCase();
|
||||
break;
|
||||
|
||||
case 'status':
|
||||
rowToFilter = rowData?.status === 'SUCCEEDED' ? 'succeeded' : 'failed';
|
||||
break;
|
||||
|
||||
case 'creation_date':
|
||||
rowToFilter = this.datePipe.transform(new Date((rowData[this.selFilterBy] || 0) * 1000), 'dd/MMM/YYYY HH:mm')?.toLowerCase() || '';
|
||||
break;
|
||||
|
||||
case 'failure_reason':
|
||||
rowToFilter = this.camelCaseWithReplace.transform((rowData.failure_reason || ''), 'failure_reason', '_');
|
||||
break;
|
||||
|
||||
case 'hops':
|
||||
rowToFilter = rowData.htlcs && rowData.htlcs[0] && rowData.htlcs[0].route && rowData.htlcs[0].route.hops && rowData.htlcs[0].route.hops.length ? rowData.htlcs[0].route.hops.length.toString() : '0';
|
||||
break;
|
||||
|
||||
default:
|
||||
rowToFilter = typeof rowData[this.selFilterBy] === 'string' ? rowData[this.selFilterBy].toLowerCase() : typeof rowData[this.selFilterBy] === 'boolean' ? (rowData[this.selFilterBy] ? 'yes' : 'no') : rowData[this.selFilterBy].toString();
|
||||
break;
|
||||
}
|
||||
return rowToFilter.includes(fltr);
|
||||
};
|
||||
// this.channels.filterPredicate = (rowData: Channel, fltr: string) => {
|
||||
// let rowToFilter = '';
|
||||
// switch (this.selFilterBy) {
|
||||
// case 'all':
|
||||
// for (let i = 0; i < this.displayedColumns.length - 1; i++) {
|
||||
// rowToFilter = rowToFilter + (
|
||||
// (this.displayedColumns[i] === '') ?
|
||||
// (rowData ? rowData..toLowerCase() : '') :
|
||||
// (rowData[this.displayedColumns[i]] ? rowData[this.displayedColumns[i]].toLowerCase() : '')
|
||||
// ) + ', ';
|
||||
// }
|
||||
// break;
|
||||
|
||||
// case 'status':
|
||||
// rowToFilter = rowData?.status === 'SUCCEEDED' ? 'succeeded' : 'failed';
|
||||
// break;
|
||||
|
||||
// case '':
|
||||
// rowToFilter = rowData?..toLowerCase() || '';
|
||||
// break;
|
||||
|
||||
// default:
|
||||
// rowToFilter = typeof rowData[this.selFilterBy] === 'string' ? rowData[this.selFilterBy].toLowerCase() : typeof rowData[this.selFilterBy] === 'boolean' ? (rowData[this.selFilterBy] ? 'yes' : 'no') : rowData[this.selFilterBy].toString();
|
||||
// break;
|
||||
// }
|
||||
// return rowToFilter.includes(fltr);
|
||||
// };
|
||||
}
|
||||
|
||||
loadPaymentsTable(payms) {
|
||||
|
|
|
@ -968,7 +968,7 @@ export const LND_PAGE_DEFS: LNDPageDefinitions = {
|
|||
open: {
|
||||
maxColumns: 8,
|
||||
allowedColumns: [{ column:'remote_alias', label: 'Peer' }, { column:'remote_pubkey', label: 'Pubkey' }, { column:'channel_point' }, { column:'chan_id', label: 'Channel ID' }, { column:'initiator' },
|
||||
{ column:'static_remote_key' }, { column:'uptime' }, { column:'lifetime' }, { column:'commit_fee' }, { column:'commit_weight' }, { column:'fee_per_kw', label: 'Fee/KW' },
|
||||
{ column:'static_remote_key' }, { column:'uptime_str', label: 'Uptime' }, { column:'lifetime_str', label: 'Lifetime' }, { column:'commit_fee' }, { column:'commit_weight' }, { column:'fee_per_kw', label: 'Fee/KW' },
|
||||
{ column:'num_updates', label: 'Updates' }, { column:'unsettled_balance' }, { column:'capacity' }, { column:'local_chan_reserve_sat', label: 'Local Reserve' },
|
||||
{ column:'remote_chan_reserve_sat', label: 'Remote Reserve' }, { column:'total_satoshis_sent', label: 'Sats Sent' }, { column:'total_satoshis_received', label: 'Sats Received' }, { column:'local_balance' },
|
||||
{ column:'remote_balance' }, { column:'balancedness', label: 'Balance Score' }]
|
||||
|
@ -1025,7 +1025,7 @@ export const LND_PAGE_DEFS: LNDPageDefinitions = {
|
|||
},
|
||||
invoices: {
|
||||
maxColumns: 9,
|
||||
allowedColumns: [{ column:'private' }, { column:'is_keysend' }, { column:'is_amp' }, { column:'creation_date', label: 'Date Created' }, { column:'settle_date', label: 'Date Settled' },
|
||||
allowedColumns: [{ column:'private' }, { column:'is_keysend', label: 'Keysend' }, { column:'is_amp', label: 'AMP' }, { column:'creation_date', label: 'Date Created' }, { column:'settle_date', label: 'Date Settled' },
|
||||
{ column:'memo' }, { column:'r_preimage', label: 'Preimage' }, { column:'r_hash', label: 'Preimage Hash' }, { column:'payment_addr', label: 'Payment Address' }, { column:'payment_request' }, { column:'description_hash' },
|
||||
{ column:'expiry' }, { column:'cltv_expiry' }, { column:'add_index' }, { column:'settle_index' }, { column:'value', label: 'Amount' }, { column:'amt_paid_sat', label: 'Amount Settled' }]
|
||||
}
|
||||
|
@ -1042,8 +1042,8 @@ export const LND_PAGE_DEFS: LNDPageDefinitions = {
|
|||
},
|
||||
non_routing_peers: {
|
||||
maxColumns: 8,
|
||||
allowedColumns: [{ column:'chan_id', label: 'Channel ID' }, { column:'remote_alias', label: 'Peer Alias' }, { column:'remote_pubkey', label: 'Peer Pubkey' }, { column:'channel_point' }, { column:'uptime' },
|
||||
{ column:'lifetime' }, { column:'commit_fee' }, { column:'commit_weight' }, { column:'fee_per_kw', label: 'Fee/KW' }, { column:'num_updates', label: 'Updates' },
|
||||
allowedColumns: [{ column:'chan_id', label: 'Channel ID' }, { column:'remote_alias', label: 'Peer Alias' }, { column:'remote_pubkey', label: 'Peer Pubkey' }, { column:'channel_point' }, { column:'uptime_str', label: 'Uptime' },
|
||||
{ column:'lifetime_str', label: 'Lifetime' }, { column:'commit_fee' }, { column:'commit_weight' }, { column:'fee_per_kw', label: 'Fee/KW' }, { column:'num_updates', label: 'Updates' },
|
||||
{ column:'unsettled_balance' }, { column:'capacity' }, { column:'local_chan_reserve_sat', label: 'Local Reserve' }, { column:'remote_chan_reserve_sat', label: 'Remote Reserve' },
|
||||
{ column:'total_satoshis_sent', label: 'Sats Sent' }, { column:'total_satoshis_received', label: 'Sats Received' }, { column:'local_balance' }, { column:'remote_balance' }]
|
||||
}
|
||||
|
|
Loading…
Add table
Reference in a new issue