mirror of
https://github.com/blitzkit/blitzkit.git
synced 2026-10-24 20:19:49 +02:00
fix: hide recetns on sort
This commit is contained in:
1 parent
19664d55aa
commit
1da517746a
1 file changed
+14
-9
@@ -2,8 +2,10 @@ import { fetchTankDefinitions } from '@blitzkit/core';
|
|||||||
import { useStore } from '@nanostores/react';
|
import { useStore } from '@nanostores/react';
|
||||||
import { Flex, Separator, Text } from '@radix-ui/themes';
|
import { Flex, Separator, Text } from '@radix-ui/themes';
|
||||||
import { isEqual } from 'lodash-es';
|
import { isEqual } from 'lodash-es';
|
||||||
|
import { useMemo } from 'react';
|
||||||
import { $tankFilters, initialTankFilters } from '../../../stores/tankFilters';
|
import { $tankFilters, initialTankFilters } from '../../../stores/tankFilters';
|
||||||
import { TankopediaPersistent } from '../../../stores/tankopediaPersistent';
|
import { TankopediaPersistent } from '../../../stores/tankopediaPersistent';
|
||||||
|
import { $tankopediaSort } from '../../../stores/tankopediaSort';
|
||||||
import { TankCard } from './TankCard';
|
import { TankCard } from './TankCard';
|
||||||
import { TankCardWrapper } from './TankCardWrapper';
|
import { TankCardWrapper } from './TankCardWrapper';
|
||||||
|
|
||||||
@@ -14,16 +16,19 @@ export function RecentlyViewed() {
|
|||||||
const filters = useStore($tankFilters);
|
const filters = useStore($tankFilters);
|
||||||
// non-reactive because it is a little weird that it updates instantly even before the page loads
|
// non-reactive because it is a little weird that it updates instantly even before the page loads
|
||||||
const recentlyViewed = tankopediaPersistentStore.getState().recentlyViewed;
|
const recentlyViewed = tankopediaPersistentStore.getState().recentlyViewed;
|
||||||
|
const sort = useStore($tankopediaSort);
|
||||||
|
const hasFilters = useMemo(
|
||||||
|
() =>
|
||||||
|
Object.entries(filters).some(([key, value]) => {
|
||||||
|
return !isEqual(
|
||||||
|
value,
|
||||||
|
initialTankFilters[key as keyof typeof initialTankFilters],
|
||||||
|
);
|
||||||
|
}),
|
||||||
|
[filters],
|
||||||
|
);
|
||||||
|
|
||||||
if (
|
if (recentlyViewed.length === 0 || sort.by !== 'meta.none' || hasFilters) {
|
||||||
recentlyViewed.length === 0 ||
|
|
||||||
Object.entries(filters).some(([key, value]) => {
|
|
||||||
return !isEqual(
|
|
||||||
value,
|
|
||||||
initialTankFilters[key as keyof typeof initialTankFilters],
|
|
||||||
);
|
|
||||||
})
|
|
||||||
) {
|
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in new issue
Block a user