schyma
Version:
JSON Schemas Visualizer React component
19 lines • 1.32 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
const tslib_1 = require("tslib");
const react_1 = tslib_1.__importDefault(require("react"));
const reactflow_1 = require("reactflow");
const node_1 = require("../constants/node");
const SchemaNode = ({ data }) => {
const { label, compositionType, isRoot } = data;
const symbolColor = compositionType ? node_1.compositionEdgeColors[compositionType] : undefined;
return (react_1.default.createElement("div", { className: 'custom-node' },
!isRoot && react_1.default.createElement(reactflow_1.Handle, { type: 'target', position: reactflow_1.Position.Left }),
react_1.default.createElement("span", { className: 'custom-node-label' }, label),
symbolColor && (react_1.default.createElement(react_1.default.Fragment, null,
react_1.default.createElement("span", { className: 'composition-symbol', style: { color: symbolColor }, "aria-hidden": 'true' }),
react_1.default.createElement("span", { className: 'composition-tooltip' }, compositionType))),
react_1.default.createElement(reactflow_1.Handle, { type: 'source', position: reactflow_1.Position.Right, style: { background: symbolColor || undefined } })));
};
exports.default = SchemaNode;
//# sourceMappingURL=CustomNode.js.map