UNPKG

@duoduo-oba/ng-devui

Version:

DevUI components based on Angular

222 lines 15.4 kB
/** * @fileoverview added by tsickle * Generated from: checkbox-group.component.ts * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ import { Component, Input, Output, EventEmitter, forwardRef, TemplateRef, } from '@angular/core'; import { NG_VALUE_ACCESSOR } from '@angular/forms'; import isArray from 'lodash-es/isArray'; var CheckBoxGroupComponent = /** @class */ (function () { function CheckBoxGroupComponent() { this.direction = 'column'; this.isShowTitle = true; this.options = []; this.showAnimation = true; this.change = new EventEmitter(); this.values = []; this.options_display = []; this.onChange = (/** * @param {?} _ * @return {?} */ function (_) { return null; }); this.onTouch = (/** * @return {?} */ function () { return null; }); } /** * @param {?} changes * @return {?} */ CheckBoxGroupComponent.prototype.ngOnChanges = /** * @param {?} changes * @return {?} */ function (changes) { if (changes['options']) { this.checkType(); } }; /** * @return {?} */ CheckBoxGroupComponent.prototype.checkType = /** * @return {?} */ function () { var _this = this; this.options_display = []; /** @type {?} */ var checkedArray = []; this.values.forEach((/** * @param {?} item * @return {?} */ function (item) { if (_this.filterKey && item[_this.filterKey]) { checkedArray[item[_this.filterKey]] = true; } else { checkedArray[item] = true; } })); this.options.forEach((/** * @param {?} item * @return {?} */ function (item) { /** @type {?} */ var option = { isChecked: false }; option['value'] = item; if (_this.filterKey && item[_this.filterKey]) { if (checkedArray[item[_this.filterKey]]) { option['isChecked'] = true; } } else { if (checkedArray[item]) { option['isChecked'] = true; } } _this.options_display.push(option); })); }; /** * @param {?} inputArray * @return {?} */ CheckBoxGroupComponent.prototype.writeValue = /** * @param {?} inputArray * @return {?} */ function (inputArray) { if (inputArray && isArray(inputArray)) { this.values = inputArray; this.checkType(); } }; /** * @param {?} fn * @return {?} */ CheckBoxGroupComponent.prototype.registerOnChange = /** * @param {?} fn * @return {?} */ function (fn) { this.onChange = fn; }; /** * @param {?} fn * @return {?} */ CheckBoxGroupComponent.prototype.registerOnTouched = /** * @param {?} fn * @return {?} */ function (fn) { this.onTouch = fn; }; /** * @param {?} $event * @param {?} i * @return {?} */ CheckBoxGroupComponent.prototype.toggle = /** * @param {?} $event * @param {?} i * @return {?} */ function ($event, i) { this.onChange(this.getCheckedArray()); this.onTouch(); this.change.next(this.options_display[i]); }; /** * @return {?} */ CheckBoxGroupComponent.prototype.getCheckedArray = /** * @return {?} */ function () { /** @type {?} */ var checkedArray = []; this.options_display.forEach((/** * @param {?} item * @return {?} */ function (item) { if (item.isChecked) { checkedArray.push(item.value); } })); return checkedArray; }; CheckBoxGroupComponent.ID_SEED = 0; CheckBoxGroupComponent.decorators = [ { type: Component, args: [{ selector: 'd-checkbox-group', template: "<div class=\"devui-checkbox-group\">\r\n <ul [class.devui-checkbox-list-inline]=\"direction === 'row'\">\r\n <li *ngFor=\"let item of options_display; let i = index\" [class.devui-checkbox-column-margin]=\"direction === 'column'\">\r\n <span>\r\n <d-checkbox\r\n [name]=\"name\"\r\n [label]=\"item['value'][filterKey] ? item['value'][filterKey] : item['value']\"\r\n [(ngModel)]=\"item['isChecked']\"\r\n [isShowTitle]=\"isShowTitle\"\r\n [color]=\"color\"\r\n [disabled]=\"item['value']['disabled']\"\r\n [labelTemplate]=\"labelTemplate\"\r\n [showAnimation]=\"showAnimation\"\r\n (ngModelChange)=\"toggle($event, i)\"\r\n >\r\n </d-checkbox>\r\n </span>\r\n </li>\r\n </ul>\r\n</div>\r\n", providers: [{ provide: NG_VALUE_ACCESSOR, useExisting: forwardRef((/** * @return {?} */ function () { return CheckBoxGroupComponent; })), multi: true }], styles: [":host{display:block}.devui-checkbox-list-inline{height:32px;line-height:32px}.devui-checkbox-list-inline ::ng-deep li{display:inline-block}.devui-checkbox-list-inline ::ng-deep li:nth-child(n+2){margin-left:10px}.devui-checkbox-column-margin:nth-child(n+2){margin-top:15px}"] }] } ]; CheckBoxGroupComponent.propDecorators = { name: [{ type: Input }], color: [{ type: Input }], direction: [{ type: Input }], isShowTitle: [{ type: Input }], options: [{ type: Input }], filterKey: [{ type: Input }], labelTemplate: [{ type: Input }], showAnimation: [{ type: Input }], change: [{ type: Output }] }; return CheckBoxGroupComponent; }()); export { CheckBoxGroupComponent }; if (false) { /** @type {?} */ CheckBoxGroupComponent.ID_SEED; /** @type {?} */ CheckBoxGroupComponent.prototype.name; /** @type {?} */ CheckBoxGroupComponent.prototype.color; /** @type {?} */ CheckBoxGroupComponent.prototype.direction; /** @type {?} */ CheckBoxGroupComponent.prototype.isShowTitle; /** @type {?} */ CheckBoxGroupComponent.prototype.options; /** @type {?} */ CheckBoxGroupComponent.prototype.filterKey; /** @type {?} */ CheckBoxGroupComponent.prototype.labelTemplate; /** @type {?} */ CheckBoxGroupComponent.prototype.showAnimation; /** @type {?} */ CheckBoxGroupComponent.prototype.change; /** @type {?} */ CheckBoxGroupComponent.prototype.values; /** @type {?} */ CheckBoxGroupComponent.prototype.options_display; /** * @type {?} * @private */ CheckBoxGroupComponent.prototype.onChange; /** * @type {?} * @private */ CheckBoxGroupComponent.prototype.onTouch; } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hlY2tib3gtZ3JvdXAuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vbmctZGV2dWkvY2hlY2tib3gvIiwic291cmNlcyI6WyJjaGVja2JveC1ncm91cC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULEtBQUssRUFDTCxNQUFNLEVBQ04sWUFBWSxFQUNaLFVBQVUsRUFFVixXQUFXLEdBR1osTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUVMLGlCQUFpQixFQUNsQixNQUFNLGdCQUFnQixDQUFDO0FBQ3hCLE9BQU8sT0FBTyxNQUFNLG1CQUFtQixDQUFDO0FBRXhDO0lBQUE7UUFlVyxjQUFTLEdBQXFCLFFBQVEsQ0FBQztRQUN2QyxnQkFBVyxHQUFHLElBQUksQ0FBQztRQUNuQixZQUFPLEdBQUcsRUFBRSxDQUFDO1FBR2Isa0JBQWEsR0FBRyxJQUFJLENBQUM7UUFDcEIsV0FBTSxHQUEwQixJQUFJLFlBQVksRUFBRSxDQUFDO1FBQzdELFdBQU0sR0FBVSxFQUFFLENBQUM7UUFDbkIsb0JBQWUsR0FBRyxFQUFFLENBQUM7UUFDYixhQUFROzs7O1FBQUcsVUFBQyxDQUFNLElBQUssT0FBQSxJQUFJLEVBQUosQ0FBSSxFQUFDO1FBQzVCLFlBQU87OztRQUFHLGNBQU0sT0FBQSxJQUFJLEVBQUosQ0FBSSxFQUFDO0lBaUUvQixDQUFDOzs7OztJQS9EQyw0Q0FBVzs7OztJQUFYLFVBQVksT0FBc0I7UUFDaEMsSUFBSSxPQUFPLENBQUMsU0FBUyxDQUFDLEVBQUU7WUFDdEIsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO1NBQ2xCO0lBQ0gsQ0FBQzs7OztJQUVELDBDQUFTOzs7SUFBVDtRQUFBLGlCQXdCQztRQXZCQyxJQUFJLENBQUMsZUFBZSxHQUFHLEVBQUUsQ0FBQzs7WUFDcEIsWUFBWSxHQUFHLEVBQUU7UUFDdkIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPOzs7O1FBQUMs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Z0NBQ0wsS0FBSzt5QkFDTCxNQUFNOztJQXFFVCw2QkFBQztDQUFBLEFBMUZELElBMEZDO1NBaEZZLHNCQUFzQjs7O0lBQ2pDLCtCQUFtQjs7SUFFbkIsc0NBQXNCOztJQUN0Qix1Q0FBZTs7SUFDZiwyQ0FBZ0Q7O0lBQ2hELDZDQUE0Qjs7SUFDNUIseUNBQXNCOztJQUN0QiwyQ0FBMkI7O0lBQzNCLCtDQUF5Qzs7SUFDekMsK0NBQThCOztJQUM5Qix3Q0FBNkQ7O0lBQzdELHdDQUFtQjs7SUFDbkIsaURBQXFCOzs7OztJQUNyQiwwQ0FBb0M7Ozs7O0lBQ3BDLHlDQUE2QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgQ29tcG9uZW50LFxyXG4gIElucHV0LFxyXG4gIE91dHB1dCxcclxuICBFdmVudEVtaXR0ZXIsXHJcbiAgZm9yd2FyZFJlZixcclxuICBWaWV3RW5jYXBzdWxhdGlvbixcclxuICBUZW1wbGF0ZVJlZixcclxuICBPbkNoYW5nZXMsXHJcbiAgU2ltcGxlQ2hhbmdlcyxcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtcclxuICBDb250cm9sVmFsdWVBY2Nlc3NvcixcclxuICBOR19WQUxVRV9BQ0NFU1NPUlxyXG59IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IGlzQXJyYXkgZnJvbSAnbG9kYXNoLWVzL2lzQXJyYXknO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdkLWNoZWNrYm94LWdyb3VwJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vY2hlY2tib3gtZ3JvdXAuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2NoZWNrYm94LWdyb3VwLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgcHJvdmlkZXJzOiBbe1xyXG4gICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXHJcbiAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBDaGVja0JveEdyb3VwQ29tcG9uZW50KSxcclxuICAgIG11bHRpOiB0cnVlXHJcbiAgfV1cclxufSlcclxuZXhwb3J0IGNsYXNzIENoZWNrQm94R3JvdXBDb21wb25lbnQgaW1wbGVtZW50cyBPbkNoYW5nZXMsIENvbnRyb2xWYWx1ZUFjY2Vzc29yIHtcclxuICBzdGF0aWMgSURfU0VFRCA9IDA7XHJcblxyXG4gIEBJbnB1dCgpIG5hbWU6IHN0cmluZztcclxuICBASW5wdXQoKSBjb2xvcjtcclxuICBASW5wdXQoKSBkaXJlY3Rpb246ICdyb3cnIHwgJ2NvbHVtbicgPSAnY29sdW1uJztcclxuICBASW5wdXQoKSBpc1Nob3dUaXRsZSA9IHRydWU7XHJcbiAgQElucHV0KCkgb3B0aW9ucyA9IFtdO1xyXG4gIEBJbnB1dCgpIGZpbHRlcktleTogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIGxhYmVsVGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT47XHJcbiAgQElucHV0KCkgc2hvd0FuaW1hdGlvbiA9IHRydWU7XHJcbiAgQE91dHB1dCgpIGNoYW5nZTogRXZlbnRFbWl0dGVyPGJvb2xlYW4+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG4gIHZhbHVlczogYW55W10gPSBbXTtcclxuICBvcHRpb25zX2Rpc3BsYXkgPSBbXTtcclxuICBwcml2YXRlIG9uQ2hhbmdlID0gKF86IGFueSkgPT4gbnVsbDtcclxuICBwcml2YXRlIG9uVG91Y2ggPSAoKSA9PiBudWxsO1xyXG5cclxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKSB7XHJcbiAgICBpZiAoY2hhbmdlc1snb3B0aW9ucyddKSB7XHJcbiAgICAgIHRoaXMuY2hlY2tUeXBlKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBjaGVja1R5cGUoKSB7XHJcbiAgICB0aGlzLm9wdGlvbnNfZGlzcGxheSA9IFtdO1xyXG4gICAgY29uc3QgY2hlY2tlZEFycmF5ID0gW107XHJcbiAgICB0aGlzLnZhbHVlcy5mb3JFYWNoKGl0ZW0gPT4ge1xyXG4gICAgICBpZiAodGhpcy5maWx0ZXJLZXkgJiYgaXRlbVt0aGlzLmZpbHRlcktleV0pIHtcclxuICAgICAgICBjaGVja2VkQXJyYXlbaXRlbVt0aGlzLmZpbHRlcktleV1dID0gdHJ1ZTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICBjaGVja2VkQXJyYXlbaXRlbV0gPSB0cnVlO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICAgIHRoaXMub3B0aW9ucy5mb3JFYWNoKGl0ZW0gPT4ge1xyXG4gICAgICBjb25zdCBvcHRpb24gPSB7IGlzQ2hlY2tlZDogZmFsc2UgfTtcclxuICAgICAgb3B0aW9uWyd2YWx1ZSddID0gaXRlbTtcclxuICAgICAgaWYgKHRoaXMuZmlsdGVyS2V5ICYmIGl0ZW1bdGhpcy5maWx0ZXJLZXldKSB7XHJcbiAgICAgICAgaWYgKGNoZWNrZWRBcnJheVtpdGVtW3RoaXMuZmlsdGVyS2V5XV0pIHtcclxuICAgICAgICAgIG9wdGlvblsnaXNDaGVja2VkJ10gPSB0cnVlO1xyXG4gICAgICAgIH1cclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICBpZiAoY2hlY2tlZEFycmF5W2l0ZW1dKSB7XHJcbiAgICAgICAgICBvcHRpb25bJ2lzQ2hlY2tlZCddID0gdHJ1ZTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgdGhpcy5vcHRpb25zX2Rpc3BsYXkucHVzaChvcHRpb24pO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICB3cml0ZVZhbHVlKGlucHV0QXJyYXk6IGFueSk6IHZvaWQge1xyXG4gICAgaWYgKGlucHV0QXJyYXkgJiYgaXNBcnJheShpbnB1dEFycmF5KSkge1xyXG4gICAgICB0aGlzLnZhbHVlcyA9IGlucHV0QXJyYXk7XHJcbiAgICAgIHRoaXMuY2hlY2tUeXBlKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICByZWdpc3Rlck9uQ2hhbmdlKGZuOiBhbnkpOiB2b2lkIHtcclxuICAgIHRoaXMub25DaGFuZ2UgPSBmbjtcclxuICB9XHJcblxyXG4gIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiBhbnkpOiB2b2lkIHtcclxuICAgIHRoaXMub25Ub3VjaCA9IGZuO1xyXG4gIH1cclxuXHJcbiAgdG9nZ2xlKCRldmVudCwgaSkge1xyXG4gICAgdGhpcy5vbkNoYW5nZSh0aGlzLmdldENoZWNrZWRBcnJheSgpKTtcclxuICAgIHRoaXMub25Ub3VjaCgpO1xyXG4gICAgdGhpcy5jaGFuZ2UubmV4dCh0aGlzLm9wdGlvbnNfZGlzcGxheVtpXSk7XHJcbiAgfVxyXG5cclxuICBnZXRDaGVja2VkQXJyYXkoKSB7XHJcbiAgICBjb25zdCBjaGVja2VkQXJyYXkgPSBbXTtcclxuICAgIHRoaXMub3B0aW9uc19kaXNwbGF5LmZvckVhY2goaXRlbSA9PiB7XHJcbiAgICAgIGlmIChpdGVtLmlzQ2hlY2tlZCkge1xyXG4gICAgICAgIGNoZWNrZWRBcnJheS5wdXNoKGl0ZW0udmFsdWUpO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICAgIHJldHVybiBjaGVja2VkQXJyYXk7XHJcbiAgfVxyXG5cclxufVxyXG4iXX0=