air-lib
Version:
This is Air's angular component library
79 lines • 5.72 kB
JavaScript
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
var SelectItem = /** @class */ (function () {
function SelectItem(source) {
var _this = this;
if (typeof source === 'string') {
this.id = this.text = source;
}
if (typeof source === 'object') {
this.id = source.id || source.text;
this.text = source.text;
if (source.children && source.text) {
this.children = source.children.map(function (c) {
/** @type {?} */
var r = new SelectItem(c);
r.parent = _this;
return r;
});
this.text = source.text;
}
}
}
/**
* @param {?} optionsMap
* @param {?} startIndex
* @return {?}
*/
SelectItem.prototype.fillChildrenHash = /**
* @param {?} optionsMap
* @param {?} startIndex
* @return {?}
*/
function (optionsMap, startIndex) {
/** @type {?} */
var i = startIndex;
this.children.map(function (child) {
optionsMap.set(child.id, i++);
});
return i;
};
/**
* @return {?}
*/
SelectItem.prototype.hasChildren = /**
* @return {?}
*/
function () {
return this.children && this.children.length > 0;
};
/**
* @return {?}
*/
SelectItem.prototype.getSimilar = /**
* @return {?}
*/
function () {
/** @type {?} */
var r = new SelectItem(false);
r.id = this.id;
r.text = this.text;
r.parent = this.parent;
return r;
};
return SelectItem;
}());
export { SelectItem };
if (false) {
/** @type {?} */
SelectItem.prototype.id;
/** @type {?} */
SelectItem.prototype.text;
/** @type {?} */
SelectItem.prototype.children;
/** @type {?} */
SelectItem.prototype.parent;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LWl0ZW0uanMiLCJzb3VyY2VSb290Ijoibmc6Ly9haXItbGliLyIsInNvdXJjZXMiOlsibGliL2NvbXBvbmVudHMvbmcyLXNlbGVjdC1jdXN0b20vc2VsZWN0L3NlbGVjdC1pdGVtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQTtJQU1FLG9CQUFtQixNQUFVO1FBQTdCLGlCQWdCQztRQWZDLElBQUksT0FBTyxNQUFNLEtBQUssUUFBUSxFQUFFO1lBQzlCLElBQUksQ0FBQyxFQUFFLEdBQUcsSUFBSSxDQUFDLElBQUksR0FBRyxNQUFNLENBQUM7U0FDOUI7UUFDRCxJQUFJLE9BQU8sTUFBTSxLQUFLLFFBQVEsRUFBRTtZQUM5QixJQUFJLENBQUMsRUFBRSxHQUFHLE1BQU0sQ0FBQyxFQUFFLElBQUksTUFBTSxDQUFDLElBQUksQ0FBQztZQUNuQyxJQUFJLENBQUMsSUFBSSxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUM7WUFDeEIsSUFBSSxNQUFNLENBQUMsUUFBUSxJQUFJLE1BQU0sQ0FBQyxJQUFJLEVBQUU7Z0JBQ2xDLElBQUksQ0FBQyxRQUFRLEdBQUcsTUFBTSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsVUFBQyxDQUFLOzt3QkFDcEMsQ0FBQyxHQUFjLElBQUksVUFBVSxDQUFDLENBQUMsQ0FBQztvQkFDcEMsQ0FBQyxDQUFDLE1BQU0sR0FBRyxLQUFJLENBQUM7b0JBQ2hCLE9BQU8sQ0FBQyxDQUFDO2dCQUNYLENBQUMsQ0FBQyxDQUFDO2dCQUNILElBQUksQ0FBQyxJQUFJLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQzthQUN6QjtTQUNGO0lBQ0gsQ0FBQzs7Ozs7O0lBRU0scUNBQWdCOzs7OztJQUF2QixVQUF3QixVQUE4QixFQUFFLFVBQWlCOztZQUNuRSxDQUFDLEdBQUcsVUFBVTtRQUNsQixJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxVQUFDLEtBQWdCO1lBQ2pDLFVBQVUsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQ2hDLENBQUMsQ0FBQyxDQUFDO1FBQ0gsT0FBTyxDQUFDLENBQUM7SUFDWCxDQUFDOzs7O0lBRU0sZ0NBQVc7OztJQUFsQjtRQUNFLE9BQU8sSUFBSSxDQUFDLFFBQVEsSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUM7SUFDbkQsQ0FBQzs7OztJQUVNLCtCQUFVOzs7SUFBakI7O1lBQ00sQ0FBQyxHQUFjLElBQUksVUFBVSxDQUFDLEtBQUssQ0FBQztRQUN4QyxDQUFDLENBQUMsRUFBRSxHQUFHLElBQUksQ0FBQyxFQUFFLENBQUM7UUFDZixDQUFDLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUM7UUFDbkIsQ0FBQyxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDO1FBQ3ZCLE9BQU8sQ0FBQyxDQUFDO0lBQ1gsQ0FBQztJQUNILGlCQUFDO0FBQUQsQ0FBQyxBQTNDRCxJQTJDQzs7OztJQTFDQyx3QkFBaUI7O0lBQ2pCLDBCQUFtQjs7SUFDbkIsOEJBQWtDOztJQUNsQyw0QkFBeUIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY2xhc3MgU2VsZWN0SXRlbSB7XHJcbiAgcHVibGljIGlkOnN0cmluZztcclxuICBwdWJsaWMgdGV4dDpzdHJpbmc7XHJcbiAgcHVibGljIGNoaWxkcmVuOkFycmF5PFNlbGVjdEl0ZW0+O1xyXG4gIHB1YmxpYyBwYXJlbnQ6U2VsZWN0SXRlbTtcclxuXHJcbiAgcHVibGljIGNvbnN0cnVjdG9yKHNvdXJjZTphbnkpIHtcclxuICAgIGlmICh0eXBlb2Ygc291cmNlID09PSAnc3RyaW5nJykge1xyXG4gICAgICB0aGlzLmlkID0gdGhpcy50ZXh0ID0gc291cmNlO1xyXG4gICAgfVxyXG4gICAgaWYgKHR5cGVvZiBzb3VyY2UgPT09ICdvYmplY3QnKSB7XHJcbiAgICAgIHRoaXMuaWQgPSBzb3VyY2UuaWQgfHwgc291cmNlLnRleHQ7XHJcbiAgICAgIHRoaXMudGV4dCA9IHNvdXJjZS50ZXh0O1xyXG4gICAgICBpZiAoc291cmNlLmNoaWxkcmVuICYmIHNvdXJjZS50ZXh0KSB7XHJcbiAgICAgICAgdGhpcy5jaGlsZHJlbiA9IHNvdXJjZS5jaGlsZHJlbi5tYXAoKGM6YW55KSA9PiB7XHJcbiAgICAgICAgICBsZXQgcjpTZWxlY3RJdGVtID0gbmV3IFNlbGVjdEl0ZW0oYyk7XHJcbiAgICAgICAgICByLnBhcmVudCA9IHRoaXM7XHJcbiAgICAgICAgICByZXR1cm4gcjtcclxuICAgICAgICB9KTtcclxuICAgICAgICB0aGlzLnRleHQgPSBzb3VyY2UudGV4dDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHVibGljIGZpbGxDaGlsZHJlbkhhc2gob3B0aW9uc01hcDpNYXA8c3RyaW5nLCBudW1iZXI+LCBzdGFydEluZGV4Om51bWJlcik6bnVtYmVyIHtcclxuICAgIGxldCBpID0gc3RhcnRJbmRleDtcclxuICAgIHRoaXMuY2hpbGRyZW4ubWFwKChjaGlsZDpTZWxlY3RJdGVtKSA9PiB7XHJcbiAgICAgIG9wdGlvbnNNYXAuc2V0KGNoaWxkLmlkLCBpKyspO1xyXG4gICAgfSk7XHJcbiAgICByZXR1cm4gaTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBoYXNDaGlsZHJlbigpOmJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMuY2hpbGRyZW4gJiYgdGhpcy5jaGlsZHJlbi5sZW5ndGggPiAwO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldFNpbWlsYXIoKTpTZWxlY3RJdGVtIHtcclxuICAgIGxldCByOlNlbGVjdEl0ZW0gPSBuZXcgU2VsZWN0SXRlbShmYWxzZSk7XHJcbiAgICByLmlkID0gdGhpcy5pZDtcclxuICAgIHIudGV4dCA9IHRoaXMudGV4dDtcclxuICAgIHIucGFyZW50ID0gdGhpcy5wYXJlbnQ7XHJcbiAgICByZXR1cm4gcjtcclxuICB9XHJcbn1cclxuIl19