mirror of
https://github.com/invoke-ai/InvokeAI.git
synced 2026-02-17 14:34:39 -05:00
feat(ui): revise filter implementation
This commit is contained in:
@@ -1,19 +1,21 @@
|
||||
import { MenuItem } from '@invoke-ai/ui-library';
|
||||
import { useCanvasManager } from 'features/controlLayers/contexts/CanvasManagerProviderGate';
|
||||
import { useEntityIdentifierContext } from 'features/controlLayers/contexts/EntityIdentifierContext';
|
||||
import { $filteringEntity } from 'features/controlLayers/store/canvasV2Slice';
|
||||
import { memo, useCallback } from 'react';
|
||||
import { useTranslation } from 'react-i18next';
|
||||
import { PiShootingStarBold } from 'react-icons/pi';
|
||||
|
||||
export const CanvasEntityMenuItemsFilter = memo(() => {
|
||||
const { t } = useTranslation();
|
||||
const canvasManager = useCanvasManager();
|
||||
const entityIdentifier = useEntityIdentifierContext();
|
||||
const filter = useCallback(() => {
|
||||
$filteringEntity.set(entityIdentifier);
|
||||
}, [entityIdentifier]);
|
||||
|
||||
const onClick = useCallback(() => {
|
||||
canvasManager.filter.initialize(entityIdentifier);
|
||||
}, [entityIdentifier, canvasManager.filter]);
|
||||
|
||||
return (
|
||||
<MenuItem onClick={filter} icon={<PiShootingStarBold />}>
|
||||
<MenuItem onClick={onClick} icon={<PiShootingStarBold />}>
|
||||
{t('controlLayers.filter.filter')}
|
||||
</MenuItem>
|
||||
);
|
||||
|
||||
Reference in New Issue
Block a user