B1: React Query deeper adoption (P1–P3) #86

Closed
null wants to merge 340 commits from branch/b1-react-query into main
1 changed files with 7 additions and 6 deletions
Showing only changes of commit 0b1c6a8322 - Show all commits

View File

@ -46,6 +46,7 @@ const trackerItems = [
{ to: '/bank-transactions', icon: Landmark, label: 'Banking', simplefinOnly: true }, { to: '/bank-transactions', icon: Landmark, label: 'Banking', simplefinOnly: true },
{ to: '/snowball', icon: TrendingDown, label: 'Snowball' }, { to: '/snowball', icon: TrendingDown, label: 'Snowball' },
{ to: '/payoff', icon: Calculator, label: 'Payoff' }, { to: '/payoff', icon: Calculator, label: 'Payoff' },
{ to: '/data', icon: Database, label: 'Data', accountToolsOnly: true },
]; ];
function TrackerMenu({ onNavigate, badge, badgeNames = [], items = trackerItems }) { function TrackerMenu({ onNavigate, badge, badgeNames = [], items = trackerItems }) {
@ -164,10 +165,6 @@ function UserMenu({ adminMode = false }) {
<Settings className="h-4 w-4" /> <Settings className="h-4 w-4" />
Settings Settings
</DropdownMenuItem> </DropdownMenuItem>
<DropdownMenuItem onSelect={() => navigate('/data')}>
<Database className="h-4 w-4" />
Data
</DropdownMenuItem>
<DropdownMenuSeparator /> <DropdownMenuSeparator />
</> </>
)} )}
@ -199,9 +196,13 @@ export default function Sidebar({ adminMode = false }) {
const { data: overdueData } = useOverdueCount(); const { data: overdueData } = useOverdueCount();
const overdueCount = (!adminMode && overdueData?.count) ? overdueData.count : 0; const overdueCount = (!adminMode && overdueData?.count) ? overdueData.count : 0;
const overdueNames = (!adminMode && overdueData?.names) ? overdueData.names : []; const overdueNames = (!adminMode && overdueData?.names) ? overdueData.names : [];
const accountToolsAllowed = !user?.is_default_admin;
const trackerMenuItems = useMemo( const trackerMenuItems = useMemo(
() => trackerItems.filter(item => !item.simplefinOnly || simplefinReady), () => trackerItems.filter(item => (
[simplefinReady], (!item.simplefinOnly || simplefinReady)
&& (!item.accountToolsOnly || accountToolsAllowed)
)),
[simplefinReady, accountToolsAllowed],
); );
useEffect(() => { useEffect(() => {