@duoduo-oba/ng-devui
Version:
DevUI components based on Angular
222 lines • 15.4 kB
JavaScript
/**
* @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=