schyma
Version:
JSON Schemas Visualizer React component
16 lines • 1.05 kB
JavaScript
import React from 'react';
import { Handle, Position } from 'reactflow';
import { compositionEdgeColors } from '../constants/node';
const SchemaNode = ({ data }) => {
const { label, compositionType, isRoot } = data;
const symbolColor = compositionType ? compositionEdgeColors[compositionType] : undefined;
return (React.createElement("div", { className: 'custom-node' },
!isRoot && React.createElement(Handle, { type: 'target', position: Position.Left }),
React.createElement("span", { className: 'custom-node-label' }, label),
symbolColor && (React.createElement(React.Fragment, null,
React.createElement("span", { className: 'composition-symbol', style: { color: symbolColor }, "aria-hidden": 'true' }),
React.createElement("span", { className: 'composition-tooltip' }, compositionType))),
React.createElement(Handle, { type: 'source', position: Position.Right, style: { background: symbolColor || undefined } })));
};
export default SchemaNode;
//# sourceMappingURL=CustomNode.js.map