UNPKG

choerodon-ui

Version:

An enterprise-class UI design language and React-based implementation

120 lines (101 loc) 3.19 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports["default"] = void 0; var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray")); var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck")); var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass")); var _tslib = require("tslib"); var _mobx = require("mobx"); var _ColumnGroup = _interopRequireDefault(require("./ColumnGroup")); var ColumnGroups = /*#__PURE__*/ function () { function ColumnGroups(columns, parent) { var _this = this; (0, _classCallCheck2["default"])(this, ColumnGroups); this.parent = parent; var prev; this.columns = columns.map(function (col) { var group = new _ColumnGroup["default"](col, _this); if (prev) { prev.next = group; group.prev = prev; } prev = group; return group; }); } (0, _createClass2["default"])(ColumnGroups, [{ key: "wide", get: function get() { return this.columns.reduce(function (sum, _ref) { var colSpan = _ref.colSpan, hidden = _ref.hidden; return hidden ? sum : sum + colSpan; }, 0); } }, { key: "deep", get: function get() { return Math.max.apply(Math, (0, _toConsumableArray2["default"])(this.columns.map(function (_ref2) { var deep = _ref2.deep; return deep; }))); } }, { key: "hidden", get: function get() { return this.columns.every(function (_ref3) { var hidden = _ref3.hidden; return hidden; }); } }, { key: "lastLeaf", get: function get() { var avaliableColumns = this.columns.filter(function (column) { return !column.hidden; }); return avaliableColumns[avaliableColumns.length - 1].lastLeaf; } }, { key: "width", get: function get() { return this.columns.reduce(function (sum, _ref4) { var width = _ref4.width; return sum + width; }, 0); } }, { key: "left", get: function get() { var parent = this.parent; if (parent) { return parent.left; } return 0; } }, { key: "right", get: function get() { var parent = this.parent; if (parent) { return parent.right; } return 0; } }]); return ColumnGroups; }(); exports["default"] = ColumnGroups; (0, _tslib.__decorate)([_mobx.computed], ColumnGroups.prototype, "wide", null); (0, _tslib.__decorate)([_mobx.computed], ColumnGroups.prototype, "deep", null); (0, _tslib.__decorate)([_mobx.computed], ColumnGroups.prototype, "hidden", null); (0, _tslib.__decorate)([_mobx.computed], ColumnGroups.prototype, "lastLeaf", null); (0, _tslib.__decorate)([_mobx.computed], ColumnGroups.prototype, "width", null); (0, _tslib.__decorate)([_mobx.computed], ColumnGroups.prototype, "left", null); (0, _tslib.__decorate)([_mobx.computed], ColumnGroups.prototype, "right", null); //# sourceMappingURL=ColumnGroups.js.map