diff --git a/stores/ActivityStore.ts b/stores/ActivityStore.ts index 9c7cd5e8a..99b1135f1 100644 --- a/stores/ActivityStore.ts +++ b/stores/ActivityStore.ts @@ -20,6 +20,7 @@ interface ActivityFilter { channels: boolean; sent: boolean; received: boolean; + unpaid: boolean; minimumAmount: number; startDate: any; endDate: any; @@ -38,6 +39,7 @@ export default class ActivityStore { channels: true, sent: true, received: true, + unpaid: true, startDate: null, endDate: null }; @@ -145,6 +147,7 @@ export default class ActivityStore { channels: true, sent: true, received: true, + unpaid: true, minimumAmount: 0, startDate: null, endDate: null @@ -215,6 +218,17 @@ export default class ActivityStore { ); } + if (filters.unpaid == false) { + filteredActivity = filteredActivity.filter( + (activity: any) => + !( + activity.model === + localeString('views.Invoice.title') && + !activity.isPaid + ) + ); + } + if (filters.minimumAmount > 0) { filteredActivity = filteredActivity.filter( (activity: any) => diff --git a/views/Activity/ActivityFilter.tsx b/views/Activity/ActivityFilter.tsx index 4fc6e3f38..79d9392d3 100644 --- a/views/Activity/ActivityFilter.tsx +++ b/views/Activity/ActivityFilter.tsx @@ -67,6 +67,7 @@ export default class ActivityFilter extends React.Component< channels, sent, received, + unpaid, minimumAmount, startDate, endDate @@ -246,6 +247,12 @@ export default class ActivityFilter extends React.Component< var: 'received', type: 'Toggle' }, + { + label: localeString('views.Wallet.Invoices.unpaid'), + value: unpaid, + var: 'unpaid', + type: 'Toggle' + }, { label: localeString('views.ActivityFilter.minimumAmount'), value: minimumAmount,