kitchen-simulator
Version:
It is a kitchen simulator (self-contained micro-frontend).
137 lines (135 loc) • 6.9 kB
JavaScript
;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
var _typeof = require("@babel/runtime/helpers/typeof");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports["default"] = void 0;
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
var _react = _interopRequireWildcard(require("react"));
var _propTypes = _interopRequireDefault(require("prop-types"));
var _export = require("./export");
var _utils = require("./utils");
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); }
function _callSuper(t, o, e) { return o = (0, _getPrototypeOf2["default"])(o), (0, _possibleConstructorReturn2["default"])(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0, _getPrototypeOf2["default"])(t).constructor) : o.apply(t, e)); }
function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
var Scene = exports["default"] = /*#__PURE__*/function (_Component) {
function Scene() {
(0, _classCallCheck2["default"])(this, Scene);
return _callSuper(this, Scene, arguments);
}
(0, _inherits2["default"])(Scene, _Component);
return (0, _createClass2["default"])(Scene, [{
key: "componentWillReceiveProps",
value: function () {
var _componentWillReceiveProps = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee(nextProps) {
var scene, catalog, height, layers, selectedLayer, msg, isNotFoundInElements, itemType;
return _regenerator["default"].wrap(function (_context) {
while (1) switch (_context.prev = _context.next) {
case 0:
// console.log("componentDidMount", this.props.scene.hashCode(), nextProps.scene.hashCode());
if (this.props.scene.hashCode() !== nextProps.scene.hashCode()) {
scene = nextProps.scene, catalog = nextProps.catalog;
height = scene.height, layers = scene.layers;
selectedLayer = layers.get(scene.selectedLayer);
msg = '';
isNotFoundInElements = false;
itemType = '';
selectedLayer.items.valueSeq().forEach(function (item) {
if (!catalog.elements.hasOwnProperty(item.type)) {
itemType = item.type;
isNotFoundInElements = true;
}
});
// if(isNotFoundInElements){
// const deepSearchResult = await searchForSkuValue(catalog, selectedLayer, itemType)
// if(!deepSearchResult.isAvailable){
// msg += (`Element ${itemType} does not exist in catalog.\n`);
// }
// }
// if(msg !== '') {
// msg += `Do you want to initialize?`;
// confirm(msg)
// ? this.context.projectActions.newProject()
// : null
// }
}
case 1:
case "end":
return _context.stop();
}
}, _callee, this);
}));
function componentWillReceiveProps(_x) {
return _componentWillReceiveProps.apply(this, arguments);
}
return componentWillReceiveProps;
}()
}, {
key: "shouldComponentUpdate",
value: function shouldComponentUpdate(nextProps, nextState) {
return this.props.scene.hashCode() !== nextProps.scene.hashCode();
}
}, {
key: "render",
value: function render() {
var _this = this;
// console.log("scene", this);
var _this$props = this.props,
scene = _this$props.scene,
catalog = _this$props.catalog;
var height = scene.height,
layers = scene.layers;
var selectedLayer = layers.get(scene.selectedLayer);
return /*#__PURE__*/_react["default"].createElement("g", null, /*#__PURE__*/_react["default"].createElement(_export.Grids, {
scene: scene
}), /*#__PURE__*/_react["default"].createElement("g", {
style: {
pointerEvents: 'none'
}
}, layers.entrySeq().filter(function (_ref) {
var _ref2 = (0, _slicedToArray2["default"])(_ref, 2),
layerID = _ref2[0],
layer = _ref2[1];
return layerID !== scene.selectedLayer && layer.visible;
}).map(function (_ref3) {
var _ref4 = (0, _slicedToArray2["default"])(_ref3, 2),
layerID = _ref4[0],
layer = _ref4[1];
return /*#__PURE__*/_react["default"].createElement(_export.Layer, {
key: layerID,
layer: layer,
scene: scene,
catalog: catalog,
mode: _this.props.state.mode,
state: _this.props.state,
relatedLines: _this.props.relatedLines
});
})), /*#__PURE__*/_react["default"].createElement(_export.Layer, {
key: selectedLayer.id,
layer: selectedLayer,
scene: scene,
catalog: catalog,
mode: this.props.state.mode,
state: this.props.state,
relatedLines: this.props.relatedLines
}));
}
}]);
}(_react.Component);
Scene.propTypes = {
scene: _propTypes["default"].object.isRequired,
catalog: _propTypes["default"].object.isRequired,
relatedLines: _propTypes["default"].object.isRequired
};
Scene.contextTypes = {
projectActions: _propTypes["default"].object.isRequired
};
module.exports = exports.default;