From 3cbafe799d6bbebb4de17ab43a0b1c772451e8b0 Mon Sep 17 00:00:00 2001 From: Chuck Dries Date: Fri, 15 May 2026 18:27:17 -0700 Subject: [PATCH 1/5] Add sidebarOrderedReports as Derived value --- src/ONYXKEYS.ts | 2 + src/components/TestToolMenu.tsx | 11 - src/hooks/useSidebarOrderedReports.tsx | 347 ++++-------------- .../OnyxDerived/ONYX_DERIVED_VALUES.ts | 2 + .../configs/sidebarOrderedReports.ts | 208 +++++++++++ src/libs/actions/OnyxDerived/types.ts | 5 +- src/types/onyx/DerivedValues.ts | 23 ++ src/types/onyx/index.ts | 2 + ...barOrderedReportsDerivedValue.perf-test.ts | 88 +++++ .../SidebarOrderedReportsDerivedValueTest.ts | 161 ++++++++ tests/unit/useSidebarOrderedReportsTest.tsx | 265 +++---------- 11 files changed, 616 insertions(+), 498 deletions(-) create mode 100644 src/libs/actions/OnyxDerived/configs/sidebarOrderedReports.ts create mode 100644 tests/perf-test/SidebarOrderedReportsDerivedValue.perf-test.ts create mode 100644 tests/unit/SidebarOrderedReportsDerivedValueTest.ts diff --git a/src/ONYXKEYS.ts b/src/ONYXKEYS.ts index 2bcf9e3f036d..11499409fdfd 100755 --- a/src/ONYXKEYS.ts +++ b/src/ONYXKEYS.ts @@ -1166,6 +1166,7 @@ const ONYXKEYS = { TODOS: 'todos', RAM_ONLY_SORTED_REPORT_ACTIONS: 'sortedReportActions', OPEN_AND_SUBMITTED_REPORTS_BY_POLICY_ID: 'openAndSubmittedReportsByPolicyID', + SIDEBAR_ORDERED_REPORTS: 'sidebarOrderedReports', }, /** Stores HybridApp specific state required to interoperate with OldDot */ @@ -1647,6 +1648,7 @@ type OnyxDerivedValuesMapping = { [ONYXKEYS.DERIVED.TODOS]: OnyxTypes.TodosDerivedValue; [ONYXKEYS.DERIVED.RAM_ONLY_SORTED_REPORT_ACTIONS]: OnyxTypes.SortedReportActionsDerivedValue; [ONYXKEYS.DERIVED.OPEN_AND_SUBMITTED_REPORTS_BY_POLICY_ID]: OnyxTypes.OpenAndSubmittedReportsByPolicyIDDerivedValue; + [ONYXKEYS.DERIVED.SIDEBAR_ORDERED_REPORTS]: OnyxTypes.SidebarOrderedReportsDerivedValue; }; type OnyxValues = OnyxValuesMapping & OnyxCollectionValuesMapping & OnyxFormValuesMapping & OnyxFormDraftValuesMapping & OnyxDerivedValuesMapping; diff --git a/src/components/TestToolMenu.tsx b/src/components/TestToolMenu.tsx index ffebc26007ff..6eed5d6ec797 100644 --- a/src/components/TestToolMenu.tsx +++ b/src/components/TestToolMenu.tsx @@ -4,7 +4,6 @@ import useBiometricRegistrationStatus, {REGISTRATION_STATUS} from '@hooks/useBio import useIsAuthenticated from '@hooks/useIsAuthenticated'; import useLocalize from '@hooks/useLocalize'; import useOnyx from '@hooks/useOnyx'; -import {useSidebarOrderedReportsActions} from '@hooks/useSidebarOrderedReports'; import useSingleExecution from '@hooks/useSingleExecution'; import useThemeStyles from '@hooks/useThemeStyles'; import useWaitForNavigation from '@hooks/useWaitForNavigation'; @@ -32,7 +31,6 @@ function TestToolMenu() { const [shouldShowBranchNameInTitle = false] = useOnyx(ONYXKEYS.SHOULD_SHOW_BRANCH_NAME_IN_TITLE); const styles = useThemeStyles(); const {translate} = useLocalize(); - const {clearLHNCache} = useSidebarOrderedReportsActions(); const [isMFARevokeLoading, setIsMFARevokeLoading] = useState(false); const {localCredentialID, isCurrentDeviceRegistered, otherDeviceCount, registrationStatus} = useBiometricRegistrationStatus(); @@ -120,15 +118,6 @@ function TestToolMenu() { /> - {/* Clears the useSidebarOrderedReports cache to re-compute from latest onyx values */} - -