UNPKG

dbweb-common

Version:

用`yarn add dbweb-common`安装,不要忘记修改`angular.json`里的 `architect\build\options\assets`,加上

80 lines 5.72 kB
/** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ export class TreeNode { /** * @param {?} name * @param {?} parent */ constructor(name, parent) { this.name = name; this.parent = parent; this.children = []; } /** * @return {?} */ title() { if (this.ele) { return this.ele.title(); } if (this.name.search(/[0-9]{2}\./) > -1) { return this.name.substr(3); } return this.name; } // 强制创建一个节点,路径上的父节点如果不存在则创建,返回最终的节点 /** * @param {?} paths * @param {?} ele * @return {?} */ forceCreate(paths, ele) { if (paths.length === 0) { return null; } /** @type {?} */ const val = paths.shift(); // 需要排序 /** @type {?} */ const idx = this.children.findIndex((/** * @param {?} item * @return {?} */ item => val.localeCompare(item.name) <= 0)); /** @type {?} */ let node = new TreeNode(val, this); if (idx === -1) { this.children.push(node); } else if (this.children[idx].name === val) { node = this.children[idx]; } else { this.children.splice(idx, 0, node); } if (paths.length === 0) { node.ele = ele; return node; } else { return node.forceCreate(paths, ele); } } } if (false) { /** @type {?} */ TreeNode.prototype.iconName; /** @type {?} */ TreeNode.prototype.color; /** @type {?} */ TreeNode.prototype.children; /** @type {?} */ TreeNode.prototype.ele; /** @type {?} */ TreeNode.prototype.name; /** @type {?} */ TreeNode.prototype.parent; } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJlZS1ub2RlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vZGJ3ZWItY29tbW9uLyIsInNvdXJjZXMiOlsibGliL3JvbGUvdHJlZS1ub2RlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFFQSxNQUFNLE9BQU8sUUFBUTs7Ozs7SUFLcEIsWUFBbUIsSUFBWSxFQUFTLE1BQWdCO1FBQXJDLFNBQUksR0FBSixJQUFJLENBQVE7UUFBUyxXQUFNLEdBQU4sTUFBTSxDQUFVO1FBRnhELGFBQVEsR0FBZ0IsRUFBRSxDQUFDO0lBRWdDLENBQUM7Ozs7SUFDNUQsS0FBSztRQUNKLElBQUksSUFBSSxDQUFDLEdBQUcsRUFBRTtZQUNiLE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLEVBQUUsQ0FBQztTQUN4QjtRQUNELElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUU7WUFDeEMsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQztTQUMzQjtRQUNELE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQztJQUNsQixDQUFDOzs7Ozs7O0lBRUQsV0FBVyxDQUFDLEtBQWUsRUFBRSxHQUFZO1FBQ3hDLElBQUksS0FBSyxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUU7WUFDdkIsT0FBTyxJQUFJLENBQUM7U0FDWjs7Y0FDSyxHQUFHLEdBQUcsS0FBSyxDQUFDLEtBQUssRUFBRTs7O2NBRW5CLEdBQUcsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLFNBQVM7Ozs7UUFBQyxJQUFJLENBQUMsRUFBRSxDQUFDLEdBQUcsQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBQzs7WUFDMUUsSUFBSSxHQUFHLElBQUksUUFBUSxDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUM7UUFDbEMsSUFBSSxHQUFHLEtBQUssQ0FBQyxDQUFDLEVBQUU7WUFDZixJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztTQUN6QjthQUFNLElBQUksSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLEtBQUssR0FBRyxFQUFFO1lBQzNDLElBQUksR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1NBQzFCO2FBQU07WUFDTixJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxHQUFHLEVBQUUsQ0FBQyxFQUFFLElBQUksQ0FBQyxDQUFDO1NBQ25DO1FBQ0QsSUFBSSxLQUFLLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRTtZQUN2QixJQUFJLENBQUMsR0FBRyxHQUFHLEdBQUcsQ0FBQztZQUNmLE9BQU8sSUFBSSxDQUFDO1NBQ1o7YUFBTTtZQUNOLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLEVBQUUsR0FBRyxDQUFDLENBQUM7U0FDcEM7SUFDRixDQUFDO0NBQ0Q7OztJQXJDQSw0QkFBa0I7O0lBQ2xCLHlCQUFlOztJQUNmLDRCQUEyQjs7SUFDM0IsdUJBQWE7O0lBQ0Qsd0JBQW1COztJQUFFLDBCQUF1QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEVsZW1lbnQgfSBmcm9tICdkYndlYi1jb3JlJztcclxuXHJcbmV4cG9ydCBjbGFzcyBUcmVlTm9kZSB7XHJcblx0aWNvbk5hbWU/OiBzdHJpbmc7XHJcblx0Y29sb3I/OiBzdHJpbmc7XHJcblx0Y2hpbGRyZW4/OiBUcmVlTm9kZVtdID0gW107XHJcblx0ZWxlOiBFbGVtZW50O1xyXG5cdGNvbnN0cnVjdG9yKHB1YmxpYyBuYW1lOiBzdHJpbmcsIHB1YmxpYyBwYXJlbnQ6IFRyZWVOb2RlKSB7fVxyXG5cdHRpdGxlKCk6IHN0cmluZyB7XHJcblx0XHRpZiAodGhpcy5lbGUpIHtcclxuXHRcdFx0cmV0dXJuIHRoaXMuZWxlLnRpdGxlKCk7XHJcblx0XHR9XHJcblx0XHRpZiAodGhpcy5uYW1lLnNlYXJjaCgvWzAtOV17Mn1cXC4vKSA+IC0xKSB7XHJcblx0XHRcdHJldHVybiB0aGlzLm5hbWUuc3Vic3RyKDMpO1xyXG5cdFx0fVxyXG5cdFx0cmV0dXJuIHRoaXMubmFtZTtcclxuXHR9XHJcblx0Ly8g5by65Yi25Yib5bu65LiA5Liq6IqC54K577yM6Lev5b6E5LiK55qE54i26IqC54K55aaC5p6c5LiN5a2Y5Zyo5YiZ5Yib5bu677yM6L+U5Zue5pyA57uI55qE6IqC54K5XHJcblx0Zm9yY2VDcmVhdGUocGF0aHM6IHN0cmluZ1tdLCBlbGU6IEVsZW1lbnQpOiBUcmVlTm9kZSB7XHJcblx0XHRpZiAocGF0aHMubGVuZ3RoID09PSAwKSB7XHJcblx0XHRcdHJldHVybiBudWxsO1xyXG5cdFx0fVxyXG5cdFx0Y29uc3QgdmFsID0gcGF0aHMuc2hpZnQoKTtcclxuXHRcdC8vIOmcgOimgeaOkuW6j1xyXG5cdFx0Y29uc3QgaWR4ID0gdGhpcy5jaGlsZHJlbi5maW5kSW5kZXgoaXRlbSA9PiB2YWwubG9jYWxlQ29tcGFyZShpdGVtLm5hbWUpIDw9IDApO1xyXG5cdFx0bGV0IG5vZGUgPSBuZXcgVHJlZU5vZGUodmFsLCB0aGlzKTtcclxuXHRcdGlmIChpZHggPT09IC0xKSB7XHJcblx0XHRcdHRoaXMuY2hpbGRyZW4ucHVzaChub2RlKTtcclxuXHRcdH0gZWxzZSBpZiAodGhpcy5jaGlsZHJlbltpZHhdLm5hbWUgPT09IHZhbCkge1xyXG5cdFx0XHRub2RlID0gdGhpcy5jaGlsZHJlbltpZHhdO1xyXG5cdFx0fSBlbHNlIHtcclxuXHRcdFx0dGhpcy5jaGlsZHJlbi5zcGxpY2UoaWR4LCAwLCBub2RlKTtcclxuXHRcdH1cclxuXHRcdGlmIChwYXRocy5sZW5ndGggPT09IDApIHtcclxuXHRcdFx0bm9kZS5lbGUgPSBlbGU7XHJcblx0XHRcdHJldHVybiBub2RlO1xyXG5cdFx0fSBlbHNlIHtcclxuXHRcdFx0cmV0dXJuIG5vZGUuZm9yY2VDcmVhdGUocGF0aHMsIGVsZSk7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcbiJdfQ==