UNPKG

@turbox3d/command-manager

Version:

Large-scale productivity application command management library

36 lines (35 loc) 1.93 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports.compose = compose; var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass")); var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck")); 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 _Command2 = require("./Command"); 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; })(); } /** * 构建一个组合了其他 Command 的结构(本质依然是一个 Command) */ function compose(declaredMap) { return /*#__PURE__*/function (_Command) { function _class(holer, parent) { var _this; (0, _classCallCheck2["default"])(this, _class); _this = _callSuper(this, _class, [holer, parent]); // 构建 $children Object.keys(declaredMap).forEach(function (key) { var command = new declaredMap[key](_this.holder, _this); _this[key] = command; _this.$children[key] = command; }); return _this; } (0, _inherits2["default"])(_class, _Command); return (0, _createClass2["default"])(_class); }(_Command2.Command); }