mirror of
https://github.com/invoke-ai/InvokeAI
synced 2024-08-30 20:32:17 +00:00
added reset to default back in, removed unneeded activation constraints
This commit is contained in:
parent
5ed7972e5f
commit
e0f2404c00
invokeai/frontend/web
public/assets/images/popoverImages
src/features
Binary file not shown.
Before ![]() (image error) Size: 649 KiB |
Binary file not shown.
Before ![]() (image error) Size: 578 KiB |
@ -1,5 +1,4 @@
|
|||||||
import type { DragEndEvent } from '@dnd-kit/core';
|
import type { DragEndEvent } from '@dnd-kit/core';
|
||||||
import { MouseSensor, TouchSensor, useSensor, useSensors } from '@dnd-kit/core';
|
|
||||||
import { SortableContext, verticalListSortingStrategy } from '@dnd-kit/sortable';
|
import { SortableContext, verticalListSortingStrategy } from '@dnd-kit/sortable';
|
||||||
import type { PropsWithChildren } from 'react';
|
import type { PropsWithChildren } from 'react';
|
||||||
import { memo } from 'react';
|
import { memo } from 'react';
|
||||||
@ -12,18 +11,8 @@ type Props = PropsWithChildren & {
|
|||||||
};
|
};
|
||||||
|
|
||||||
const DndSortable = (props: Props) => {
|
const DndSortable = (props: Props) => {
|
||||||
const mouseSensor = useSensor(MouseSensor, {
|
|
||||||
activationConstraint: { distance: 10 },
|
|
||||||
});
|
|
||||||
|
|
||||||
const touchSensor = useSensor(TouchSensor, {
|
|
||||||
activationConstraint: { distance: 10 },
|
|
||||||
});
|
|
||||||
|
|
||||||
const sensors = useSensors(mouseSensor, touchSensor);
|
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<DndContextTypesafe onDragEnd={props.onDragEnd} sensors={sensors}>
|
<DndContextTypesafe onDragEnd={props.onDragEnd}>
|
||||||
<SortableContext items={props.items} strategy={verticalListSortingStrategy}>
|
<SortableContext items={props.items} strategy={verticalListSortingStrategy}>
|
||||||
{props.children}
|
{props.children}
|
||||||
</SortableContext>
|
</SortableContext>
|
||||||
|
14
invokeai/frontend/web/src/features/nodes/components/flow/nodes/Invocation/fields/LinearViewField.tsx
14
invokeai/frontend/web/src/features/nodes/components/flow/nodes/Invocation/fields/LinearViewField.tsx
@ -3,12 +3,13 @@ import { CSS } from '@dnd-kit/utilities';
|
|||||||
import { Flex, Icon, IconButton, Spacer, Tooltip } from '@invoke-ai/ui-library';
|
import { Flex, Icon, IconButton, Spacer, Tooltip } from '@invoke-ai/ui-library';
|
||||||
import { useAppDispatch } from 'app/store/storeHooks';
|
import { useAppDispatch } from 'app/store/storeHooks';
|
||||||
import NodeSelectionOverlay from 'common/components/NodeSelectionOverlay';
|
import NodeSelectionOverlay from 'common/components/NodeSelectionOverlay';
|
||||||
|
import { useFieldOriginalValue } from 'features/nodes/hooks/useFieldOriginalValue';
|
||||||
import { useMouseOverNode } from 'features/nodes/hooks/useMouseOverNode';
|
import { useMouseOverNode } from 'features/nodes/hooks/useMouseOverNode';
|
||||||
import { workflowExposedFieldRemoved } from 'features/nodes/store/workflowSlice';
|
import { workflowExposedFieldRemoved } from 'features/nodes/store/workflowSlice';
|
||||||
import { HANDLE_TOOLTIP_OPEN_DELAY } from 'features/nodes/types/constants';
|
import { HANDLE_TOOLTIP_OPEN_DELAY } from 'features/nodes/types/constants';
|
||||||
import { memo, useCallback } from 'react';
|
import { memo, useCallback } from 'react';
|
||||||
import { useTranslation } from 'react-i18next';
|
import { useTranslation } from 'react-i18next';
|
||||||
import { PiDotsSixVerticalBold, PiInfoBold, PiTrashSimpleBold } from 'react-icons/pi';
|
import { PiArrowCounterClockwiseBold, PiDotsSixVerticalBold, PiInfoBold, PiTrashSimpleBold } from 'react-icons/pi';
|
||||||
|
|
||||||
import EditableFieldTitle from './EditableFieldTitle';
|
import EditableFieldTitle from './EditableFieldTitle';
|
||||||
import FieldTooltipContent from './FieldTooltipContent';
|
import FieldTooltipContent from './FieldTooltipContent';
|
||||||
@ -21,6 +22,7 @@ type Props = {
|
|||||||
|
|
||||||
const LinearViewField = ({ nodeId, fieldName }: Props) => {
|
const LinearViewField = ({ nodeId, fieldName }: Props) => {
|
||||||
const dispatch = useAppDispatch();
|
const dispatch = useAppDispatch();
|
||||||
|
const { isValueChanged, onReset } = useFieldOriginalValue(nodeId, fieldName);
|
||||||
const { isMouseOverNode, handleMouseOut, handleMouseOver } = useMouseOverNode(nodeId);
|
const { isMouseOverNode, handleMouseOut, handleMouseOver } = useMouseOverNode(nodeId);
|
||||||
const { t } = useTranslation();
|
const { t } = useTranslation();
|
||||||
|
|
||||||
@ -62,6 +64,16 @@ const LinearViewField = ({ nodeId, fieldName }: Props) => {
|
|||||||
<Flex alignItems="center">
|
<Flex alignItems="center">
|
||||||
<EditableFieldTitle nodeId={nodeId} fieldName={fieldName} kind="input" />
|
<EditableFieldTitle nodeId={nodeId} fieldName={fieldName} kind="input" />
|
||||||
<Spacer />
|
<Spacer />
|
||||||
|
{isValueChanged && (
|
||||||
|
<IconButton
|
||||||
|
aria-label={t('nodes.resetToDefaultValue')}
|
||||||
|
tooltip={t('nodes.resetToDefaultValue')}
|
||||||
|
variant="ghost"
|
||||||
|
size="sm"
|
||||||
|
onClick={onReset}
|
||||||
|
icon={<PiArrowCounterClockwiseBold />}
|
||||||
|
/>
|
||||||
|
)}
|
||||||
<Tooltip
|
<Tooltip
|
||||||
label={<FieldTooltipContent nodeId={nodeId} fieldName={fieldName} kind="input" />}
|
label={<FieldTooltipContent nodeId={nodeId} fieldName={fieldName} kind="input" />}
|
||||||
openDelay={HANDLE_TOOLTIP_OPEN_DELAY}
|
openDelay={HANDLE_TOOLTIP_OPEN_DELAY}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user