From c33dc8d848a29201ca9b282507ecb06bb477cb94 Mon Sep 17 00:00:00 2001 From: Trevor Farlow <trevdor@users.noreply.github.com> Date: Tue, 18 Oct 2022 12:42:46 -0600 Subject: [PATCH] Schedules editor: exclude closed accounts in Account autocomplete Closes #55 --- .../src/components/accounts/TransactionsTable.js | 1 + .../src/components/util/GenericInput.js | 1 + .../src/components/AccountAutocomplete.js | 12 ++++++++++-- .../loot-design/src/components/modals/EditField.js | 1 + 4 files changed, 13 insertions(+), 2 deletions(-) diff --git a/packages/desktop-client/src/components/accounts/TransactionsTable.js b/packages/desktop-client/src/components/accounts/TransactionsTable.js index 2d25cbe84..ba9599821 100644 --- a/packages/desktop-client/src/components/accounts/TransactionsTable.js +++ b/packages/desktop-client/src/components/accounts/TransactionsTable.js @@ -762,6 +762,7 @@ export const Transaction = React.memo(function Transaction(props) { <AccountAutocomplete value={accountId} accounts={accounts} + includeClosedAccounts shouldSaveFromKey={shouldSaveFromKey} tableBehavior={true} focused={true} diff --git a/packages/desktop-client/src/components/util/GenericInput.js b/packages/desktop-client/src/components/util/GenericInput.js index 8d8c6aeaf..4813dd8a4 100644 --- a/packages/desktop-client/src/components/util/GenericInput.js +++ b/packages/desktop-client/src/components/util/GenericInput.js @@ -66,6 +66,7 @@ export default function GenericInput({ content = ( <AccountAutocomplete accounts={accounts} + includeClosedAccounts value={value} multi={multi} openOnFocus={false} diff --git a/packages/loot-design/src/components/AccountAutocomplete.js b/packages/loot-design/src/components/AccountAutocomplete.js index cc600521b..7b2acadd3 100644 --- a/packages/loot-design/src/components/AccountAutocomplete.js +++ b/packages/loot-design/src/components/AccountAutocomplete.js @@ -66,7 +66,11 @@ export function AccountList({ ); } -export default function AccountAutocomplete({ embedded, ...props }) { +export default function AccountAutocomplete({ + embedded, + includeClosedAccounts = false, + ...props +}) { let accounts = useCachedAccounts() || []; return ( @@ -74,7 +78,11 @@ export default function AccountAutocomplete({ embedded, ...props }) { strict={true} highlightFirst={true} embedded={embedded} - suggestions={accounts} + suggestions={ + includeClosedAccounts + ? accounts + : accounts.filter(a => a.closed === false) + } renderItems={(items, getItemProps, highlightedIndex) => ( <AccountList items={items} diff --git a/packages/loot-design/src/components/modals/EditField.js b/packages/loot-design/src/components/modals/EditField.js index 9b0277d68..a9c2208c5 100644 --- a/packages/loot-design/src/components/modals/EditField.js +++ b/packages/loot-design/src/components/modals/EditField.js @@ -72,6 +72,7 @@ function EditField({ <AccountAutocomplete value={null} accounts={accounts} + includeClosedAccounts focused={true} embedded={true} onSelect={value => { -- GitLab