UNPKG

@hxui/angular

Version:

* * *

89 lines 6.92 kB
/** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingReturn,uselessCode} checked by tsc */ import { FilterType } from './filters-type.enum'; export class FiltersModel { /** * @param {?=} data */ constructor(data) { this.defaultIndex = 0; this.charLimit = 2; Object.assign(this, data); if (this.type !== FilterType.Search) { this.setSelectedOption(); } this.isIconised(); } /** * @param {?=} option * @return {?} */ setSelectedOption(option) { if (option) { option.selected = true; this.selected = option; } else { if (this.options.length && !this.selected) { this.selected = this.options.find((opt) => { return opt.selected; }); } } } /** * @return {?} */ setDefaultOption() { if (this.options.length) { this.selected = this.options[this.defaultIndex]; } } /** * @return {?} */ isDefaultOptionActive() { if (this.type === FilterType.SingleSelect) { return (this.selected === this.options[this.defaultIndex]); } else if (this.type === FilterType.Search) { return (this.value === '' || this.value === undefined); } } /** * @return {?} */ isIconised() { if (this.options) { /** @type {?} */ const hasIcons = this.options.find((option) => { return (typeof option.icon !== 'undefined' && option.icon !== ''); }); return (typeof hasIcons !== 'undefined'); } return false; } } if (false) { /** @type {?} */ FiltersModel.prototype.id; /** @type {?} */ FiltersModel.prototype.type; /** @type {?} */ FiltersModel.prototype.label; /** @type {?} */ FiltersModel.prototype.options; /** @type {?} */ FiltersModel.prototype.value; /** @type {?} */ FiltersModel.prototype.callback; /** @type {?} */ FiltersModel.prototype.selected; /** @type {?} */ FiltersModel.prototype.defaultIndex; /** @type {?} */ FiltersModel.prototype.charLimit; } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVycy5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BoeHVpL2FuZ3VsYXIvIiwic291cmNlcyI6WyJsaWIvZmlsdGVycy9maWx0ZXJzLm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFDQSxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0scUJBQXFCLENBQUM7QUFFL0MsTUFBTSxPQUFPLFlBQVk7Ozs7SUFZdkIsWUFBWSxJQUFxQjtRQUhqQyxpQkFBWSxHQUFHLENBQUMsQ0FBQztRQUNqQixjQUFTLEdBQUcsQ0FBQyxDQUFDO1FBR1osTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFDMUIsSUFBSSxJQUFJLENBQUMsSUFBSSxLQUFLLFVBQVUsQ0FBQyxNQUFNLEVBQUU7WUFDbkMsSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUM7U0FDMUI7UUFDRCxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7SUFDcEIsQ0FBQzs7Ozs7SUFFQSxpQkFBaUIsQ0FBQyxNQUFzQjtRQUN2QyxJQUFJLE1BQU0sRUFBRTtZQUNWLE1BQU0sQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDO1lBQ3ZCLElBQUksQ0FBQyxRQUFRLEdBQUcsTUFBTSxDQUFDO1NBQ3hCO2FBQU07WUFDTCxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRTtnQkFDekMsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFO29CQUN4QyxPQUFPLEdBQUcsQ0FBQyxRQUFRLENBQUM7Z0JBQ3RCLENBQUMsQ0FBQyxDQUFDO2FBQ0o7U0FDRjtJQUNILENBQUM7Ozs7SUFFRCxnQkFBZ0I7UUFDZCxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxFQUFFO1lBQ3ZCLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUM7U0FDakQ7SUFDSCxDQUFDOzs7O0lBRUQscUJBQXFCO1FBQ25CLElBQUksSUFBSSxDQUFDLElBQUksS0FBSyxVQUFVLENBQUMsWUFBWSxFQUFFO1lBQ3pDLE9BQU8sQ0FBQyxJQUFJLENBQUMsUUFBUSxLQUFLLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUM7U0FDNUQ7YUFBTSxJQUFJLElBQUksQ0FBQyxJQUFJLEtBQUssVUFBVSxDQUFDLE1BQU0sRUFBRTtZQUMxQyxPQUFPLENBQUMsSUFBSSxDQUFDLEtBQUssS0FBSyxFQUFFLElBQUksSUFBSSxDQUFDLEtBQUssS0FBSyxTQUFTLENBQUMsQ0FBQztTQUN4RDtJQUNILENBQUM7Ozs7SUFFRCxVQUFVO1FBQ1IsSUFBSSxJQUFJLENBQUMsT0FBTyxFQUFFOztrQkFDVixRQUFRLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxNQUFNLEVBQUUsRUFBRTtnQkFDNUMsT0FBTyxDQUFDLE9BQU8sTUFBTSxDQUFDLElBQUksS0FBSyxXQUFXLElBQUksTUFBTSxDQUFDLElBQUksS0FBSyxFQUFFLENBQUMsQ0FBQztZQUNwRSxDQUFDLENBQUM7WUFDRixPQUFPLENBQUMsT0FBTyxRQUFRLEtBQUssV0FBVyxDQUFDLENBQUM7U0FDMUM7UUFDRCxPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7Q0FDRjs7O0lBdERDLDBCQUFXOztJQUNYLDRCQUFpQjs7SUFDakIsNkJBQWM7O0lBQ2QsK0JBQTBCOztJQUMxQiw2QkFBZTs7SUFDZixnQ0FBYzs7SUFDZCxnQ0FBd0I7O0lBQ3hCLG9DQUFpQjs7SUFDakIsaUNBQWMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0lGaWx0ZXJPcHRpb24sIElGaWx0ZXJzQ29uZmlnfSBmcm9tICcuL2ZpbHRlcnMtY29uZmlnLmludGVyZmFjZSc7XHJcbmltcG9ydCB7RmlsdGVyVHlwZX0gZnJvbSAnLi9maWx0ZXJzLXR5cGUuZW51bSc7XHJcblxyXG5leHBvcnQgY2xhc3MgRmlsdGVyc01vZGVsIGltcGxlbWVudHMgSUZpbHRlcnNDb25maWcge1xyXG5cclxuICBpZDogc3RyaW5nO1xyXG4gIHR5cGU6IEZpbHRlclR5cGU7XHJcbiAgbGFiZWw6IHN0cmluZztcclxuICBvcHRpb25zPzogSUZpbHRlck9wdGlvbltdO1xyXG4gIHZhbHVlPzogc3RyaW5nO1xyXG4gIGNhbGxiYWNrOiBhbnk7XHJcbiAgc2VsZWN0ZWQ6IElGaWx0ZXJPcHRpb247XHJcbiAgZGVmYXVsdEluZGV4ID0gMDtcclxuICBjaGFyTGltaXQgPSAyO1xyXG5cclxuICBjb25zdHJ1Y3RvcihkYXRhPzogSUZpbHRlcnNDb25maWcpIHtcclxuICAgIE9iamVjdC5hc3NpZ24odGhpcywgZGF0YSk7XHJcbiAgICBpZiAodGhpcy50eXBlICE9PSBGaWx0ZXJUeXBlLlNlYXJjaCkge1xyXG4gICAgICB0aGlzLnNldFNlbGVjdGVkT3B0aW9uKCk7XHJcbiAgICB9XHJcbiAgICB0aGlzLmlzSWNvbmlzZWQoKTtcclxuICB9XHJcblxyXG4gICBzZXRTZWxlY3RlZE9wdGlvbihvcHRpb24/OiBJRmlsdGVyT3B0aW9uKSB7XHJcbiAgICBpZiAob3B0aW9uKSB7XHJcbiAgICAgIG9wdGlvbi5zZWxlY3RlZCA9IHRydWU7XHJcbiAgICAgIHRoaXMuc2VsZWN0ZWQgPSBvcHRpb247XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBpZiAodGhpcy5vcHRpb25zLmxlbmd0aCAmJiAhdGhpcy5zZWxlY3RlZCkge1xyXG4gICAgICAgIHRoaXMuc2VsZWN0ZWQgPSB0aGlzLm9wdGlvbnMuZmluZCgob3B0KSA9PiB7XHJcbiAgICAgICAgICByZXR1cm4gb3B0LnNlbGVjdGVkO1xyXG4gICAgICAgIH0pO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBzZXREZWZhdWx0T3B0aW9uKCkge1xyXG4gICAgaWYgKHRoaXMub3B0aW9ucy5sZW5ndGgpIHtcclxuICAgICAgdGhpcy5zZWxlY3RlZCA9IHRoaXMub3B0aW9uc1t0aGlzLmRlZmF1bHRJbmRleF07XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBpc0RlZmF1bHRPcHRpb25BY3RpdmUoKSB7XHJcbiAgICBpZiAodGhpcy50eXBlID09PSBGaWx0ZXJUeXBlLlNpbmdsZVNlbGVjdCkge1xyXG4gICAgICByZXR1cm4gKHRoaXMuc2VsZWN0ZWQgPT09IHRoaXMub3B0aW9uc1t0aGlzLmRlZmF1bHRJbmRleF0pO1xyXG4gICAgfSBlbHNlIGlmICh0aGlzLnR5cGUgPT09IEZpbHRlclR5cGUuU2VhcmNoKSB7XHJcbiAgICAgIHJldHVybiAodGhpcy52YWx1ZSA9PT0gJycgfHwgdGhpcy52YWx1ZSA9PT0gdW5kZWZpbmVkKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGlzSWNvbmlzZWQoKSB7XHJcbiAgICBpZiAodGhpcy5vcHRpb25zKSB7XHJcbiAgICAgIGNvbnN0IGhhc0ljb25zID0gdGhpcy5vcHRpb25zLmZpbmQoKG9wdGlvbikgPT4ge1xyXG4gICAgICAgIHJldHVybiAodHlwZW9mIG9wdGlvbi5pY29uICE9PSAndW5kZWZpbmVkJyAmJiBvcHRpb24uaWNvbiAhPT0gJycpO1xyXG4gICAgICB9KTtcclxuICAgICAgcmV0dXJuICh0eXBlb2YgaGFzSWNvbnMgIT09ICd1bmRlZmluZWQnKTtcclxuICAgIH1cclxuICAgIHJldHVybiBmYWxzZTtcclxuICB9XHJcbn1cclxuIl19