diff --git a/locales/en.json b/locales/en.json index e7329df1b..4684adef0 100644 --- a/locales/en.json +++ b/locales/en.json @@ -802,6 +802,7 @@ "views.ActivityFilter.lightningPayments": "Lightning payments", "views.ActivityFilter.onChainPayments": "On-chain payments", "views.ActivityFilter.minimumAmount": "Minimum Amount (sats)", + "views.ActivityFilter.inTransit": "In transit payments", "general.clearChanges": "Clear changes", "views.Routing.RoutingEvent.sourceChannel": "Source Channel", "views.Routing.RoutingEvent.destinationChannel": "Destination Channel", diff --git a/stores/ActivityStore.ts b/stores/ActivityStore.ts index 5c661c394..7469c717a 100644 --- a/stores/ActivityStore.ts +++ b/stores/ActivityStore.ts @@ -24,6 +24,7 @@ export interface Filter { sent: boolean; received: boolean; unpaid: boolean; + inTransit: boolean; minimumAmount: number; startDate?: Date; endDate?: Date; @@ -35,6 +36,7 @@ export const DEFAULT_FILTERS = { sent: true, received: true, unpaid: true, + inTransit: false, minimumAmount: 0, startDate: undefined, endDate: undefined @@ -83,6 +85,7 @@ export default class ActivityStore { sent: false, received: true, unpaid: false, + inTransit: false, minimumAmount: 0, startDate: undefined, endDate: undefined diff --git a/utils/ActivityFilterUtils.ts b/utils/ActivityFilterUtils.ts index fcd8f2489..d26a68560 100644 --- a/utils/ActivityFilterUtils.ts +++ b/utils/ActivityFilterUtils.ts @@ -70,6 +70,17 @@ class ActivityFilterUtils { ); } + if (filter.inTransit == false) { + filteredActivity = filteredActivity.filter( + (activity: any) => + !( + activity.model === + localeString('views.Payment.title') && + activity.isInTransit + ) + ); + } + if (filter.minimumAmount > 0) { filteredActivity = filteredActivity.filter( (activity: any) => diff --git a/views/Activity/ActivityFilter.tsx b/views/Activity/ActivityFilter.tsx index 6bad6bc8f..e3adfad20 100644 --- a/views/Activity/ActivityFilter.tsx +++ b/views/Activity/ActivityFilter.tsx @@ -73,6 +73,7 @@ export default class ActivityFilter extends React.Component< sent, received, unpaid, + inTransit, minimumAmount, startDate, endDate @@ -185,6 +186,12 @@ export default class ActivityFilter extends React.Component< var: 'unpaid', type: 'Toggle' }, + { + label: localeString('views.ActivityFilter.inTransit'), + value: inTransit, + var: 'inTransit', + type: 'Toggle' + }, { label: localeString('views.ActivityFilter.minimumAmount'), value: minimumAmount,