fix: 801 dont show if name empty (#854)

* fix: 801 dont show if name empty

* fix: 801 add same logic to multiple entity
This commit is contained in:
310387
2023-07-24 03:02:21 +03:00
committed by GitHub
parent 21d5133564
commit 2b885f2496
2 changed files with 12 additions and 2 deletions

View File

@ -7,6 +7,7 @@ import { DropdownMenuItemsContainer } from '@/ui/dropdown/components/DropdownMen
import { DropdownMenuSearch } from '@/ui/dropdown/components/DropdownMenuSearch'; import { DropdownMenuSearch } from '@/ui/dropdown/components/DropdownMenuSearch';
import { DropdownMenuSeparator } from '@/ui/dropdown/components/DropdownMenuSeparator'; import { DropdownMenuSeparator } from '@/ui/dropdown/components/DropdownMenuSeparator';
import { Avatar } from '@/users/components/Avatar'; import { Avatar } from '@/users/components/Avatar';
import { isNonEmptyString } from '~/utils/isNonEmptyString';
import { EntityForSelect } from '../types/EntityForSelect'; import { EntityForSelect } from '../types/EntityForSelect';
@ -43,11 +44,15 @@ export function MultipleEntitySelect<
onSearchFilterChange(event.currentTarget.value); onSearchFilterChange(event.currentTarget.value);
} }
const entitiesInDropdown = [ let entitiesInDropdown = [
...(entities.filteredSelectedEntities ?? []), ...(entities.filteredSelectedEntities ?? []),
...(entities.entitiesToSelect ?? []), ...(entities.entitiesToSelect ?? []),
]; ];
entitiesInDropdown = entitiesInDropdown.filter((entity) =>
isNonEmptyString(entity.name),
);
return ( return (
<DropdownMenu> <DropdownMenu>
<DropdownMenuSearch <DropdownMenuSearch

View File

@ -7,6 +7,7 @@ import { DropdownMenuSelectableItem } from '@/ui/dropdown/components/DropdownMen
import { useScopedHotkeys } from '@/ui/hotkey/hooks/useScopedHotkeys'; import { useScopedHotkeys } from '@/ui/hotkey/hooks/useScopedHotkeys';
import { Avatar } from '@/users/components/Avatar'; import { Avatar } from '@/users/components/Avatar';
import { isDefined } from '~/utils/isDefined'; import { isDefined } from '~/utils/isDefined';
import { isNonEmptyString } from '~/utils/isNonEmptyString';
import { OverflowingTextWithTooltip } from '../../tooltip/OverflowingTextWithTooltip'; import { OverflowingTextWithTooltip } from '../../tooltip/OverflowingTextWithTooltip';
import { useEntitySelectScroll } from '../hooks/useEntitySelectScroll'; import { useEntitySelectScroll } from '../hooks/useEntitySelectScroll';
@ -35,10 +36,14 @@ export function SingleEntitySelectBase<
onCancel?: () => void; onCancel?: () => void;
}) { }) {
const containerRef = useRef<HTMLDivElement>(null); const containerRef = useRef<HTMLDivElement>(null);
const entitiesInDropdown = isDefined(entities.selectedEntity) let entitiesInDropdown = isDefined(entities.selectedEntity)
? [entities.selectedEntity, ...(entities.entitiesToSelect ?? [])] ? [entities.selectedEntity, ...(entities.entitiesToSelect ?? [])]
: entities.entitiesToSelect ?? []; : entities.entitiesToSelect ?? [];
entitiesInDropdown = entitiesInDropdown.filter((entity) =>
isNonEmptyString(entity.name),
);
const { hoveredIndex, resetScroll } = useEntitySelectScroll({ const { hoveredIndex, resetScroll } = useEntitySelectScroll({
entities: entitiesInDropdown, entities: entitiesInDropdown,
containerRef, containerRef,