kitchen-simulator
Version:
It is a kitchen simulator (self-contained micro-frontend).
75 lines (74 loc) • 3.26 kB
JavaScript
;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
var _typeof = require("@babel/runtime/helpers/typeof");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports["default"] = Vertex;
var _react = _interopRequireDefault(require("react"));
var _propTypes = _interopRequireDefault(require("prop-types"));
var SharedStyle = _interopRequireWildcard(require("../../shared-style"));
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, "default": e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); }
//Space from the center of the point(Use cases:x - vertexthickness,y + vertexthickness )
var vertexthickness = 4;
var STYLE = {
// strokeWidth: 5,
strokeLinejoin: 'round',
rx: '2px',
stroke: SharedStyle.LINE_MESH_COLOR.selected,
fill: SharedStyle.LINE_MESH_COLOR.selected,
cursor: 'move'
};
function Vertex(_ref) {
var vertex = _ref.vertex,
layer = _ref.layer;
var x = vertex.x,
y = vertex.y;
var relatedVertice = {
x: x,
y: y
};
if (vertex.lines.get(0)) {
var line = layer.lines.get(vertex.lines.get(0));
if (layer.lines.get(vertex.lines.get(1)) !== undefined && layer.lines.get(vertex.lines.get(1)).get('selected')) {
line = layer.lines.get(vertex.lines.get(1));
}
if (line) {
var index = line.vertices.findIndex(function (a) {
return a === vertex.id;
});
if (index > -1) {
var vertice = line.relatedVertices.filter(function (a) {
if (a['index'] === undefined) {
return a.get('index') === index;
} else if (a['index'] !== undefined) {
return a.index === index;
}
}).get(0);
if (vertice && !vertice['point']) {
relatedVertice = {
x: vertice.get('point').get('x'),
y: vertice.get('point').get('y')
};
} else if (vertice !== undefined) {
relatedVertice = vertice['point'];
}
}
}
}
return /*#__PURE__*/_react["default"].createElement("g", {
"data-element-root": true,
"data-prototype": vertex.prototype,
"data-id": vertex.id,
"data-selected": vertex.selected,
"data-layer": layer.id
}, /*#__PURE__*/_react["default"].createElement("polygon", {
points: "".concat(x - vertexthickness, ",").concat(y + vertexthickness, " ").concat(x - vertexthickness, ",").concat(y - vertexthickness, " ").concat(x + vertexthickness, ",").concat(y - vertexthickness, " ").concat(x + vertexthickness, ",").concat(y + vertexthickness),
style: STYLE
}));
}
Vertex.propTypes = {
vertex: _propTypes["default"].object.isRequired,
layer: _propTypes["default"].object.isRequired
};
module.exports = exports.default;