diff --git a/lib/redux/client/client_selectors.dart b/lib/redux/client/client_selectors.dart index 2074ea6a1..1c84cfbd9 100644 --- a/lib/redux/client/client_selectors.dart +++ b/lib/redux/client/client_selectors.dart @@ -1,4 +1,5 @@ import 'package:invoiceninja_flutter/data/models/group_model.dart'; +import 'package:invoiceninja_flutter/redux/app/app_state.dart'; import 'package:invoiceninja_flutter/redux/static/static_state.dart'; import 'package:memoize/memoize.dart'; import 'package:built_collection/built_collection.dart'; @@ -28,30 +29,36 @@ List dropdownClientsSelector( return list; } -var memoizedFilteredClientList = memo8((String filterEntityId, - EntityType filterEntityType, +var memoizedFilteredClientList = memo7((SelectionState selectionState, BuiltMap clientMap, BuiltList clientList, BuiltMap groupMap, ListUIState clientListState, BuiltMap userMap, StaticState staticState) => - filteredClientsSelector(filterEntityId, filterEntityType, clientMap, - clientList, groupMap, clientListState, userMap, staticState)); + filteredClientsSelector(selectionState, clientMap, clientList, groupMap, + clientListState, userMap, staticState)); List filteredClientsSelector( - String filterEntityId, - EntityType filterEntityType, + SelectionState selectionState, BuiltMap clientMap, BuiltList clientList, BuiltMap groupMap, ListUIState clientListState, BuiltMap userMap, StaticState staticState) { + + final filterEntityId = selectionState.filterEntityId; + final filterEntityType = selectionState.filterEntityType; + final list = clientList.where((clientId) { final client = clientMap[clientId]; final group = groupMap[client.groupId] ?? GroupEntity(id: client.groupId); + if (client.id == selectionState.selectedId) { + return true; + } + if (filterEntityType == EntityType.group && group.id != filterEntityId) { return false; } else if (filterEntityType == EntityType.user && diff --git a/lib/redux/credit/credit_selectors.dart b/lib/redux/credit/credit_selectors.dart index 3607c3744..a386cf292 100644 --- a/lib/redux/credit/credit_selectors.dart +++ b/lib/redux/credit/credit_selectors.dart @@ -1,3 +1,4 @@ +import 'package:invoiceninja_flutter/redux/app/app_state.dart'; import 'package:invoiceninja_flutter/redux/static/static_state.dart'; import 'package:memoize/memoize.dart'; import 'package:built_collection/built_collection.dart'; @@ -63,31 +64,36 @@ ClientEntity creditClientSelector( return clientMap[credit.clientId]; } -var memoizedFilteredCreditList = memo8((String filterEntityId, - EntityType filterEntityType, +var memoizedFilteredCreditList = memo7((SelectionState selectionState, BuiltMap creditMap, BuiltList creditList, BuiltMap clientMap, ListUIState creditListState, StaticState staticState, BuiltMap userMap) => - filteredCreditsSelector(filterEntityId, filterEntityType, creditMap, - creditList, clientMap, creditListState, staticState, userMap)); + filteredCreditsSelector(selectionState, creditMap, creditList, clientMap, + creditListState, staticState, userMap)); List filteredCreditsSelector( - String filterEntityId, - EntityType filterEntityType, + SelectionState selectionState, BuiltMap creditMap, BuiltList creditList, BuiltMap clientMap, ListUIState creditListState, StaticState staticState, BuiltMap userMap) { + final filterEntityId = selectionState.filterEntityId; + final filterEntityType = selectionState.filterEntityType; + final list = creditList.where((creditId) { final credit = creditMap[creditId]; final client = clientMap[credit.clientId] ?? ClientEntity(id: credit.clientId); + if (credit.id == selectionState.selectedId) { + return true; + } + if (!client.isActive && !client.matchesEntityFilter(filterEntityType, filterEntityId)) { return false; diff --git a/lib/redux/expense/expense_selectors.dart b/lib/redux/expense/expense_selectors.dart index 8b866c731..7ab030c80 100644 --- a/lib/redux/expense/expense_selectors.dart +++ b/lib/redux/expense/expense_selectors.dart @@ -1,4 +1,5 @@ import 'package:flutter/foundation.dart'; +import 'package:invoiceninja_flutter/redux/app/app_state.dart'; import 'package:invoiceninja_flutter/redux/static/static_state.dart'; import 'package:memoize/memoize.dart'; import 'package:built_collection/built_collection.dart'; @@ -81,8 +82,7 @@ List dropdownExpensesSelector( return list; } -var memoizedFilteredExpenseList = memo10((String filterEntityId, - EntityType filterEntityType, +var memoizedFilteredExpenseList = memo9((SelectionState selectionState, BuiltMap expenseMap, BuiltMap clientMap, BuiltMap vendorMap, @@ -92,8 +92,7 @@ var memoizedFilteredExpenseList = memo10((String filterEntityId, BuiltMap expenseCategoryMap, StaticState staticState) => filteredExpensesSelector( - filterEntityId, - filterEntityType, + selectionState, expenseMap, clientMap, vendorMap, @@ -104,8 +103,7 @@ var memoizedFilteredExpenseList = memo10((String filterEntityId, staticState)); List filteredExpensesSelector( - String filterEntityId, - EntityType filterEntityType, + SelectionState selectionState, BuiltMap expenseMap, BuiltMap clientMap, BuiltMap vendorMap, @@ -114,6 +112,9 @@ List filteredExpensesSelector( BuiltMap invoiceMap, BuiltMap expenseCategoryMap, StaticState staticState) { + final filterEntityId = selectionState.filterEntityId; + final filterEntityType = selectionState.filterEntityType; + final list = expenseMap.keys.where((expenseId) { final expense = expenseMap[expenseId]; final vendor = @@ -121,6 +122,10 @@ List filteredExpensesSelector( final client = clientMap[expense.clientId] ?? ClientEntity(id: expense.clientId); + if (expense.id == selectionState.selectedId) { + return true; + } + if (filterEntityType != null) { if (filterEntityType == EntityType.client && expense.clientId != filterEntityId) { diff --git a/lib/redux/payment/payment_selectors.dart b/lib/redux/payment/payment_selectors.dart index 2c02337eb..ccd94c950 100644 --- a/lib/redux/payment/payment_selectors.dart +++ b/lib/redux/payment/payment_selectors.dart @@ -1,3 +1,4 @@ +import 'package:invoiceninja_flutter/redux/app/app_state.dart'; import 'package:memoize/memoize.dart'; import 'package:built_collection/built_collection.dart'; import 'package:invoiceninja_flutter/data/models/models.dart'; @@ -65,26 +66,27 @@ List dropdownPaymentsSelector( return list; } -var memoizedFilteredPaymentList = memo8((String filterEntityId, - EntityType filterEntityType, +var memoizedFilteredPaymentList = memo7((SelectionState selectionState, BuiltMap paymentMap, BuiltList paymentList, BuiltMap invoiceMap, BuiltMap clientMap, BuiltMap userMap, ListUIState paymentListState) => - filteredPaymentsSelector(filterEntityId, filterEntityType, paymentMap, - paymentList, invoiceMap, clientMap, userMap, paymentListState)); + filteredPaymentsSelector(selectionState, paymentMap, paymentList, + invoiceMap, clientMap, userMap, paymentListState)); List filteredPaymentsSelector( - String filterEntityId, - EntityType filterEntityType, + SelectionState selectionState, BuiltMap paymentMap, BuiltList paymentList, BuiltMap invoiceMap, BuiltMap clientMap, BuiltMap userMap, ListUIState paymentListState) { + final filterEntityId = selectionState.filterEntityId; + final filterEntityType = selectionState.filterEntityType; + final list = paymentList.where((paymentId) { final payment = paymentMap[paymentId]; if (!payment.matchesStates(paymentListState.stateFilters)) { @@ -94,6 +96,10 @@ List filteredPaymentsSelector( final client = clientMap[payment.clientId] ?? ClientEntity(id: payment.clientId); + if (payment.id == selectionState.selectedId) { + return true; + } + if (!client.isActive && !client.matchesEntityFilter(filterEntityType, filterEntityId)) { return false; diff --git a/lib/redux/project/project_selectors.dart b/lib/redux/project/project_selectors.dart index 107b0f0e5..c085cdbd0 100644 --- a/lib/redux/project/project_selectors.dart +++ b/lib/redux/project/project_selectors.dart @@ -64,24 +64,25 @@ List dropdownProjectsSelector( return list; } -var memoizedFilteredProjectList = memo7((String filterEntityId, - EntityType filterEntityType, +var memoizedFilteredProjectList = memo6((SelectionState selectionState, BuiltMap projectMap, BuiltList projectList, ListUIState projectListState, BuiltMap clientMap, BuiltMap userMap) => - filteredProjectsSelector(filterEntityId, filterEntityType, projectMap, - projectList, projectListState, clientMap, userMap)); + filteredProjectsSelector(selectionState, projectMap, projectList, + projectListState, clientMap, userMap)); List filteredProjectsSelector( - String filterEntityId, - EntityType filterEntityType, + SelectionState selectionState, BuiltMap projectMap, BuiltList projectList, ListUIState projectListState, BuiltMap clientMap, BuiltMap userMap) { + final filterEntityId = selectionState.filterEntityId; + final filterEntityType = selectionState.filterEntityType; + final list = projectList.where((projectId) { final project = projectMap[projectId]; final client = @@ -89,6 +90,10 @@ List filteredProjectsSelector( final user = userMap[project.assignedUserId] ?? UserEntity(id: project.assignedUserId); + if (project.id == selectionState.selectedId) { + return true; + } + if (filterEntityId != null) { if (filterEntityType == EntityType.client && !client.matchesEntityFilter(filterEntityType, filterEntityId)) { diff --git a/lib/redux/quote/quote_selectors.dart b/lib/redux/quote/quote_selectors.dart index dcde905fb..88671cbe9 100644 --- a/lib/redux/quote/quote_selectors.dart +++ b/lib/redux/quote/quote_selectors.dart @@ -1,3 +1,4 @@ +import 'package:invoiceninja_flutter/redux/app/app_state.dart'; import 'package:invoiceninja_flutter/redux/static/static_state.dart'; import 'package:memoize/memoize.dart'; import 'package:built_collection/built_collection.dart'; @@ -9,31 +10,36 @@ ClientEntity quoteClientSelector( return clientMap[quote.clientId]; } -var memoizedFilteredQuoteList = memo8((String filterEntityId, - EntityType filterEntityType, +var memoizedFilteredQuoteList = memo7((SelectionState selectionState, BuiltMap quoteMap, BuiltList quoteList, BuiltMap clientMap, ListUIState quoteListState, StaticState staticState, BuiltMap userMap) => - filteredQuotesSelector(filterEntityId, filterEntityType, quoteMap, - quoteList, clientMap, quoteListState, staticState, userMap)); + filteredQuotesSelector(selectionState, quoteMap, quoteList, clientMap, + quoteListState, staticState, userMap)); List filteredQuotesSelector( - String filterEntityId, - EntityType filterEntityType, + SelectionState selectionState, BuiltMap quoteMap, BuiltList quoteList, BuiltMap clientMap, ListUIState quoteListState, StaticState staticState, BuiltMap userMap) { + final filterEntityId = selectionState.filterEntityId; + final filterEntityType = selectionState.filterEntityType; + final list = quoteList.where((quoteId) { final quote = quoteMap[quoteId]; final client = clientMap[quote.clientId] ?? ClientEntity(id: quote.clientId); + if (quote.id == selectionState.selectedId) { + return true; + } + if (!client.isActive && !client.matchesEntityFilter(filterEntityType, filterEntityId)) { return false; diff --git a/lib/redux/recurring_invoice/recurring_invoice_selectors.dart b/lib/redux/recurring_invoice/recurring_invoice_selectors.dart index bde0e4bb5..bb0976309 100644 --- a/lib/redux/recurring_invoice/recurring_invoice_selectors.dart +++ b/lib/redux/recurring_invoice/recurring_invoice_selectors.dart @@ -1,13 +1,13 @@ import 'package:invoiceninja_flutter/data/models/invoice_model.dart'; +import 'package:invoiceninja_flutter/redux/app/app_state.dart'; import 'package:invoiceninja_flutter/redux/static/static_state.dart'; import 'package:memoize/memoize.dart'; import 'package:built_collection/built_collection.dart'; import 'package:invoiceninja_flutter/data/models/models.dart'; import 'package:invoiceninja_flutter/redux/ui/list_ui_state.dart'; -var memoizedFilteredRecurringInvoiceList = memo8(( - String filterEntityId, - EntityType filterEntityType, +var memoizedFilteredRecurringInvoiceList = memo7(( + SelectionState selectionState, BuiltMap recurringInvoiceMap, BuiltMap clientMap, BuiltList recurringInvoiceList, @@ -16,8 +16,7 @@ var memoizedFilteredRecurringInvoiceList = memo8(( BuiltMap userMap, ) => filteredRecurringInvoicesSelector( - filterEntityId, - filterEntityType, + selectionState, recurringInvoiceMap, clientMap, recurringInvoiceList, @@ -27,8 +26,7 @@ var memoizedFilteredRecurringInvoiceList = memo8(( )); List filteredRecurringInvoicesSelector( - String filterEntityId, - EntityType filterEntityType, + SelectionState selectionState, BuiltMap recurringInvoiceMap, BuiltMap clientMap, BuiltList recurringInvoiceList, @@ -36,11 +34,18 @@ List filteredRecurringInvoicesSelector( StaticState staticState, BuiltMap userMap, ) { + final filterEntityId = selectionState.filterEntityId; + final filterEntityType = selectionState.filterEntityType; + final list = recurringInvoiceList.where((recurringInvoiceId) { final invoice = recurringInvoiceMap[recurringInvoiceId]; final client = clientMap[invoice.clientId] ?? ClientEntity(id: invoice.clientId); + if (invoice.id == selectionState.selectedId) { + return true; + } + if (!client.isActive && !client.matchesEntityFilter(filterEntityType, filterEntityId)) { return false; diff --git a/lib/redux/task/task_selectors.dart b/lib/redux/task/task_selectors.dart index 1921ce273..f24583b80 100644 --- a/lib/redux/task/task_selectors.dart +++ b/lib/redux/task/task_selectors.dart @@ -104,8 +104,7 @@ List dropdownTasksSelector( return list; } -var memoizedFilteredTaskList = memo9((String filterEntityId, - EntityType filterEntityType, +var memoizedFilteredTaskList = memo8((SelectionState selectionState, BuiltMap taskMap, BuiltMap clientMap, BuiltMap userMap, @@ -113,12 +112,11 @@ var memoizedFilteredTaskList = memo9((String filterEntityId, BuiltMap invoiceMap, BuiltList taskList, ListUIState taskListState) => - filteredTasksSelector(filterEntityId, filterEntityType, taskMap, clientMap, - userMap, projectMap, invoiceMap, taskList, taskListState)); + filteredTasksSelector(selectionState, taskMap, clientMap, userMap, + projectMap, invoiceMap, taskList, taskListState)); List filteredTasksSelector( - String filterEntityId, - EntityType filterEntityType, + SelectionState selectionState, BuiltMap taskMap, BuiltMap clientMap, BuiltMap userMap, @@ -126,12 +124,19 @@ List filteredTasksSelector( BuiltMap invoiceMap, BuiltList taskList, ListUIState taskListState) { + final filterEntityId = selectionState.filterEntityId; + final filterEntityType = selectionState.filterEntityType; + final list = taskList.where((taskId) { final task = taskMap[taskId]; final client = clientMap[task.clientId] ?? ClientEntity(id: task.clientId); final project = projectMap[task.projectId] ?? ProjectEntity(id: task.projectId); + if (task.id == selectionState.selectedId) { + return true; + } + if (!client.isActive && !client.matchesEntityFilter(filterEntityType, filterEntityId)) { return false; diff --git a/lib/redux/token/token_selectors.dart b/lib/redux/token/token_selectors.dart index 14beb6346..4fa20883b 100644 --- a/lib/redux/token/token_selectors.dart +++ b/lib/redux/token/token_selectors.dart @@ -1,4 +1,5 @@ import 'package:invoiceninja_flutter/data/models/token_model.dart'; +import 'package:invoiceninja_flutter/redux/app/app_state.dart'; import 'package:memoize/memoize.dart'; import 'package:built_collection/built_collection.dart'; import 'package:invoiceninja_flutter/data/models/models.dart'; @@ -24,28 +25,27 @@ List dropdownTokensSelector(BuiltMap tokenMap, return list; } -var memoizedFilteredTokenList = memo5(( - String filterEntityId, - EntityType filterEntityType, +var memoizedFilteredTokenList = memo4(( + SelectionState selectionState, BuiltMap tokenMap, BuiltList tokenList, ListUIState tokenListState, ) => filteredTokensSelector( - filterEntityId, - filterEntityType, + selectionState, tokenMap, tokenList, tokenListState, )); List filteredTokensSelector( - String filterEntityId, - EntityType filterEntityType, + SelectionState selectionState, BuiltMap tokenMap, BuiltList tokenList, ListUIState tokenListState, ) { + final filterEntityId = selectionState.filterEntityId; + final list = tokenList.where((tokenId) { final token = tokenMap[tokenId]; if (filterEntityId != null && token.id != filterEntityId) { @@ -54,6 +54,10 @@ List filteredTokensSelector( // } + if (token.id == selectionState.selectedId) { + return true; + } + if (token.isSystem) { return false; } diff --git a/lib/redux/webhook/webhook_selectors.dart b/lib/redux/webhook/webhook_selectors.dart index 22b809cf2..a01904472 100644 --- a/lib/redux/webhook/webhook_selectors.dart +++ b/lib/redux/webhook/webhook_selectors.dart @@ -1,4 +1,5 @@ import 'package:invoiceninja_flutter/data/models/webhook_model.dart'; +import 'package:invoiceninja_flutter/redux/app/app_state.dart'; import 'package:memoize/memoize.dart'; import 'package:built_collection/built_collection.dart'; import 'package:invoiceninja_flutter/data/models/models.dart'; @@ -32,34 +33,38 @@ List dropdownWebhooksSelector( return list; } -var memoizedFilteredWebhookList = memo5(( - String filterEntityId, - EntityType filterEntityType, +var memoizedFilteredWebhookList = memo4(( + SelectionState selectionState, BuiltMap webhookMap, BuiltList webhookList, ListUIState webhookListState, ) => filteredWebhooksSelector( - filterEntityId, - filterEntityType, + selectionState, webhookMap, webhookList, webhookListState, )); List filteredWebhooksSelector( - String filterEntityId, - EntityType filterEntityType, + SelectionState selectionState, BuiltMap webhookMap, BuiltList webhookList, ListUIState webhookListState, ) { + final filterEntityId = selectionState.filterEntityId; + final filterEntityType = selectionState.filterEntityType; + final list = webhookList.where((webhookId) { final webhook = webhookMap[webhookId]; if (filterEntityId != null && webhook.id != filterEntityId) { return false; } else {} + if (webhook.id == selectionState.selectedId) { + return true; + } + if (!webhook.matchesStates(webhookListState.stateFilters)) { return false; } diff --git a/lib/ui/client/client_list_vm.dart b/lib/ui/client/client_list_vm.dart index 3c24adbe7..466db2c07 100644 --- a/lib/ui/client/client_list_vm.dart +++ b/lib/ui/client/client_list_vm.dart @@ -94,8 +94,7 @@ class ClientListVM { return ClientListVM( state: state, clientList: memoizedFilteredClientList( - state.uiState.filterEntityId, - state.uiState.filterEntityType, + state.getUISelection(EntityType.client), state.clientState.map, state.clientState.list, state.groupState.map, diff --git a/lib/ui/client/client_screen_vm.dart b/lib/ui/client/client_screen_vm.dart index 86cacd3c8..a497049c2 100644 --- a/lib/ui/client/client_screen_vm.dart +++ b/lib/ui/client/client_screen_vm.dart @@ -45,8 +45,7 @@ class ClientScreenVM { return ClientScreenVM( clientMap: state.clientState.map, clientList: memoizedFilteredClientList( - state.uiState.filterEntityId, - state.uiState.filterEntityType, + state.getUISelection(EntityType.client), state.clientState.map, state.clientState.list, state.groupState.map, diff --git a/lib/ui/credit/credit_list_vm.dart b/lib/ui/credit/credit_list_vm.dart index e6501265e..547d38cab 100644 --- a/lib/ui/credit/credit_list_vm.dart +++ b/lib/ui/credit/credit_list_vm.dart @@ -103,8 +103,7 @@ class CreditListVM extends EntityListVM { return CreditListVM( state: state, invoiceList: memoizedFilteredCreditList( - state.uiState.filterEntityId, - state.uiState.filterEntityType, + state.getUISelection(EntityType.credit), state.creditState.map, state.creditState.list, state.clientState.map, diff --git a/lib/ui/credit/credit_screen_vm.dart b/lib/ui/credit/credit_screen_vm.dart index b282ee880..1bdf7eeeb 100644 --- a/lib/ui/credit/credit_screen_vm.dart +++ b/lib/ui/credit/credit_screen_vm.dart @@ -48,8 +48,7 @@ class CreditScreenVM { return CreditScreenVM( creditMap: state.creditState.map, creditList: memoizedFilteredCreditList( - state.uiState.filterEntityId, - state.uiState.filterEntityType, + state.getUISelection(EntityType.credit), state.creditState.map, state.creditState.list, state.clientState.map, diff --git a/lib/ui/expense/expense_list_vm.dart b/lib/ui/expense/expense_list_vm.dart index 9157ed31c..ee5e7beba 100644 --- a/lib/ui/expense/expense_list_vm.dart +++ b/lib/ui/expense/expense_list_vm.dart @@ -81,8 +81,7 @@ class ExpenseListVM { user: state.user, listState: state.expenseListState, expenseList: memoizedFilteredExpenseList( - state.uiState.filterEntityId, - state.uiState.filterEntityType, + state.getUISelection(EntityType.expense), state.expenseState.map, state.clientState.map, state.vendorState.map, diff --git a/lib/ui/expense/expense_screen_vm.dart b/lib/ui/expense/expense_screen_vm.dart index 964251849..2fb808271 100644 --- a/lib/ui/expense/expense_screen_vm.dart +++ b/lib/ui/expense/expense_screen_vm.dart @@ -45,8 +45,7 @@ class ExpenseScreenVM { return ExpenseScreenVM( expenseMap: state.expenseState.map, expenseList: memoizedFilteredExpenseList( - state.uiState.filterEntityId, - state.uiState.filterEntityType, + state.getUISelection(EntityType.expense), state.expenseState.map, state.clientState.map, state.vendorState.map, diff --git a/lib/ui/payment/payment_list_vm.dart b/lib/ui/payment/payment_list_vm.dart index 2baf3c5d4..7ec7b1ad5 100644 --- a/lib/ui/payment/payment_list_vm.dart +++ b/lib/ui/payment/payment_list_vm.dart @@ -83,8 +83,7 @@ class PaymentListVM { state: state, user: state.user, paymentList: memoizedFilteredPaymentList( - state.uiState.filterEntityId, - state.uiState.filterEntityType, + state.getUISelection(EntityType.payment), state.paymentState.map, state.paymentState.list, state.invoiceState.map, diff --git a/lib/ui/payment/payment_screen_vm.dart b/lib/ui/payment/payment_screen_vm.dart index 8d36edbeb..79674c1b2 100644 --- a/lib/ui/payment/payment_screen_vm.dart +++ b/lib/ui/payment/payment_screen_vm.dart @@ -45,8 +45,7 @@ class PaymentScreenVM { return PaymentScreenVM( paymentMap: state.paymentState.map, paymentList: memoizedFilteredPaymentList( - state.uiState.filterEntityId, - state.uiState.filterEntityType, + state.getUISelection(EntityType.payment), state.paymentState.map, state.paymentState.list, state.invoiceState.map, diff --git a/lib/ui/project/project_list_vm.dart b/lib/ui/project/project_list_vm.dart index fd6d452a7..d1c386b37 100644 --- a/lib/ui/project/project_list_vm.dart +++ b/lib/ui/project/project_list_vm.dart @@ -86,8 +86,7 @@ class ProjectListVM { state: state, listState: state.projectListState, projectList: memoizedFilteredProjectList( - state.uiState.filterEntityId, - state.uiState.filterEntityType, + state.getUISelection(EntityType.project), state.projectState.map, state.projectState.list, state.projectListState, diff --git a/lib/ui/project/project_screen_vm.dart b/lib/ui/project/project_screen_vm.dart index 68d66fd1b..6e3eb7d46 100644 --- a/lib/ui/project/project_screen_vm.dart +++ b/lib/ui/project/project_screen_vm.dart @@ -45,8 +45,7 @@ class ProjectScreenVM { return ProjectScreenVM( projectMap: state.projectState.map, projectList: memoizedFilteredProjectList( - state.uiState.filterEntityId, - state.uiState.filterEntityType, + state.getUISelection(EntityType.project), state.projectState.map, state.projectState.list, state.projectListState, diff --git a/lib/ui/quote/quote_list_vm.dart b/lib/ui/quote/quote_list_vm.dart index 322b16aec..a78b0dc13 100644 --- a/lib/ui/quote/quote_list_vm.dart +++ b/lib/ui/quote/quote_list_vm.dart @@ -96,8 +96,7 @@ class QuoteListVM extends EntityListVM { return QuoteListVM( state: state, invoiceList: memoizedFilteredQuoteList( - state.uiState.filterEntityId, - state.uiState.filterEntityType, + state.getUISelection(EntityType.quote), state.quoteState.map, state.quoteState.list, state.clientState.map, diff --git a/lib/ui/quote/quote_screen_vm.dart b/lib/ui/quote/quote_screen_vm.dart index 4127c8a59..8ceed8cf1 100644 --- a/lib/ui/quote/quote_screen_vm.dart +++ b/lib/ui/quote/quote_screen_vm.dart @@ -45,8 +45,7 @@ class QuoteScreenVM { return QuoteScreenVM( quoteMap: state.quoteState.map, quoteList: memoizedFilteredQuoteList( - state.uiState.filterEntityId, - state.uiState.filterEntityType, + state.getUISelection(EntityType.quote), state.quoteState.map, state.quoteState.list, state.clientState.map, diff --git a/lib/ui/recurring_invoice/recurring_invoice_list_vm.dart b/lib/ui/recurring_invoice/recurring_invoice_list_vm.dart index 035682a66..1e7e04046 100644 --- a/lib/ui/recurring_invoice/recurring_invoice_list_vm.dart +++ b/lib/ui/recurring_invoice/recurring_invoice_list_vm.dart @@ -84,8 +84,7 @@ class RecurringInvoiceListVM { userCompany: state.userCompany, listState: state.recurringInvoiceListState, recurringInvoiceList: memoizedFilteredRecurringInvoiceList( - state.uiState.filterEntityId, - state.uiState.filterEntityType, + state.getUISelection(EntityType.recurringInvoice), state.recurringInvoiceState.map, state.clientState.map, state.recurringInvoiceState.list, diff --git a/lib/ui/recurring_invoice/recurring_invoice_screen_vm.dart b/lib/ui/recurring_invoice/recurring_invoice_screen_vm.dart index d95f4d9fe..7132d133a 100644 --- a/lib/ui/recurring_invoice/recurring_invoice_screen_vm.dart +++ b/lib/ui/recurring_invoice/recurring_invoice_screen_vm.dart @@ -48,8 +48,7 @@ class RecurringInvoiceScreenVM { return RecurringInvoiceScreenVM( recurringInvoiceMap: state.recurringInvoiceState.map, recurringInvoiceList: memoizedFilteredRecurringInvoiceList( - state.uiState.filterEntityId, - state.uiState.filterEntityType, + state.getUISelection(EntityType.recurringInvoice), state.recurringInvoiceState.map, state.clientState.map, state.recurringInvoiceState.list, diff --git a/lib/ui/task/task_list_vm.dart b/lib/ui/task/task_list_vm.dart index b46ec7bc1..d078a174c 100644 --- a/lib/ui/task/task_list_vm.dart +++ b/lib/ui/task/task_list_vm.dart @@ -83,8 +83,7 @@ class TaskListVM { user: state.user, listState: state.taskListState, taskList: memoizedFilteredTaskList( - state.uiState.filterEntityId, - state.uiState.filterEntityType, + state.getUISelection(EntityType.task), state.taskState.map, state.clientState.map, state.userState.map, diff --git a/lib/ui/task/task_screen_vm.dart b/lib/ui/task/task_screen_vm.dart index 14aa2ac2f..d56b2ce75 100644 --- a/lib/ui/task/task_screen_vm.dart +++ b/lib/ui/task/task_screen_vm.dart @@ -45,8 +45,7 @@ class TaskScreenVM { return TaskScreenVM( taskMap: state.taskState.map, taskList: memoizedFilteredTaskList( - state.uiState.filterEntityId, - state.uiState.filterEntityType, + state.getUISelection(EntityType.task), state.taskState.map, state.clientState.map, state.userState.map, diff --git a/lib/ui/token/token_list_vm.dart b/lib/ui/token/token_list_vm.dart index 76811d6c2..e659c5249 100644 --- a/lib/ui/token/token_list_vm.dart +++ b/lib/ui/token/token_list_vm.dart @@ -88,8 +88,7 @@ class TokenListVM { userCompany: state.userCompany, listState: state.tokenListState, tokenList: memoizedFilteredTokenList( - state.uiState.filterEntityId, - state.uiState.filterEntityType, + state.getUISelection(EntityType.token), state.tokenState.map, state.tokenState.list, state.tokenListState), diff --git a/lib/ui/token/token_screen_vm.dart b/lib/ui/token/token_screen_vm.dart index 38c8ec0e3..e3b1010ac 100644 --- a/lib/ui/token/token_screen_vm.dart +++ b/lib/ui/token/token_screen_vm.dart @@ -48,8 +48,7 @@ class TokenScreenVM { return TokenScreenVM( tokenMap: state.tokenState.map, tokenList: memoizedFilteredTokenList( - state.uiState.filterEntityId, - state.uiState.filterEntityType, + state.getUISelection(EntityType.token), state.tokenState.map, state.tokenState.list, state.tokenListState), diff --git a/lib/ui/webhook/webhook_list_vm.dart b/lib/ui/webhook/webhook_list_vm.dart index 1823f6b36..0769abdb1 100644 --- a/lib/ui/webhook/webhook_list_vm.dart +++ b/lib/ui/webhook/webhook_list_vm.dart @@ -88,8 +88,7 @@ class WebhookListVM { userCompany: state.userCompany, listState: state.webhookListState, webhookList: memoizedFilteredWebhookList( - state.uiState.filterEntityId, - state.uiState.filterEntityType, + state.getUISelection(EntityType.webhook), state.webhookState.map, state.webhookState.list, state.webhookListState), diff --git a/lib/ui/webhook/webhook_screen_vm.dart b/lib/ui/webhook/webhook_screen_vm.dart index cc4ddc131..3cc3d634e 100644 --- a/lib/ui/webhook/webhook_screen_vm.dart +++ b/lib/ui/webhook/webhook_screen_vm.dart @@ -48,8 +48,7 @@ class WebhookScreenVM { return WebhookScreenVM( webhookMap: state.webhookState.map, webhookList: memoizedFilteredWebhookList( - state.uiState.filterEntityId, - state.uiState.filterEntityType, + state.getUISelection(EntityType.webhook), state.webhookState.map, state.webhookState.list, state.webhookListState),