R: Improve OSS rendering

This commit is contained in:
Ivan 2024-10-30 19:56:48 +03:00
parent df4adf72a5
commit 9c336e324b
6 changed files with 17 additions and 13 deletions

View File

@ -9,7 +9,6 @@ import {
getViewportForBounds, getViewportForBounds,
Node, Node,
NodeChange, NodeChange,
NodeTypes,
ReactFlow, ReactFlow,
useEdgesState, useEdgesState,
useNodesState, useNodesState,
@ -29,9 +28,8 @@ import { PARAMETER, storage } from '@/utils/constants';
import { errors } from '@/utils/labels'; import { errors } from '@/utils/labels';
import { useOssEdit } from '../OssEditContext'; import { useOssEdit } from '../OssEditContext';
import InputNode from './InputNode'; import { OssNodeTypes } from './graph/OssNodeTypes';
import NodeContextMenu, { ContextMenuData } from './NodeContextMenu'; import NodeContextMenu, { ContextMenuData } from './NodeContextMenu';
import OperationNode from './OperationNode';
import ToolbarOssGraph from './ToolbarOssGraph'; import ToolbarOssGraph from './ToolbarOssGraph';
interface OssFlowProps { interface OssFlowProps {
@ -312,14 +310,6 @@ function OssFlow({ isModified, setIsModified }: OssFlowProps) {
} }
} }
const OssNodeTypes: NodeTypes = useMemo(
() => ({
synthesis: OperationNode,
input: InputNode
}),
[]
);
const graph = useMemo( const graph = useMemo(
() => ( () => (
<ReactFlow <ReactFlow
@ -328,6 +318,8 @@ function OssFlow({ isModified, setIsModified }: OssFlowProps) {
onNodesChange={handleNodesChange} onNodesChange={handleNodesChange}
onEdgesChange={onEdgesChange} onEdgesChange={onEdgesChange}
onNodeDoubleClick={handleNodeDoubleClick} onNodeDoubleClick={handleNodeDoubleClick}
edgesFocusable={false}
nodesFocusable={false}
fitView fitView
nodeTypes={OssNodeTypes} nodeTypes={OssNodeTypes}
maxZoom={2} maxZoom={2}
@ -349,7 +341,6 @@ function OssFlow({ isModified, setIsModified }: OssFlowProps) {
handleClickCanvas, handleClickCanvas,
onEdgesChange, onEdgesChange,
handleNodeDoubleClick, handleNodeDoubleClick,
OssNodeTypes,
showGrid showGrid
] ]
); );

View File

@ -9,7 +9,7 @@ import { OperationType } from '@/models/oss';
import { PARAMETER, prefixes } from '@/utils/constants'; import { PARAMETER, prefixes } from '@/utils/constants';
import { truncateToLastWord } from '@/utils/utils'; import { truncateToLastWord } from '@/utils/utils';
import { useOssEdit } from '../OssEditContext'; import { useOssEdit } from '../../OssEditContext';
interface NodeCoreProps { interface NodeCoreProps {
node: OssNodeInternal; node: OssNodeInternal;

View File

@ -0,0 +1,9 @@
import { NodeTypes } from 'reactflow';
import InputNode from './InputNode';
import OperationNode from './OperationNode';
export const OssNodeTypes: NodeTypes = {
synthesis: OperationNode,
input: InputNode
};

View File

@ -43,6 +43,7 @@
.react-flow__handle { .react-flow__handle {
cursor: default !important; cursor: default !important;
border-radius: 9999px;
border-color: var(--cl-bg-40); border-color: var(--cl-bg-40);
background-color: var(--cl-bg-120); background-color: var(--cl-bg-120);
@ -66,6 +67,9 @@
} }
.react-flow__attribution { .react-flow__attribution {
font-size: var(--font-size-sm);
font-family: var(--font-ui);
background-color: transparent; background-color: transparent;
color: var(--cl-fg-60); color: var(--cl-fg-60);
.dark & { .dark & {