@kre-form/ant
Version:
137 lines (136 loc) • 9.85 kB
JavaScript
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
import { Component } from "@angular/core";
import { FieldType, Guid } from "@kre-form/core";
export class KreFormFieldCheckboxGroup extends FieldType {
constructor() {
super(...arguments);
this.guid = Guid.create()["value"];
}
/**
* @param {?} values
* @return {?}
*/
onChange(values) {
/** @type {?} */
let res = [];
if (values != undefined && values != null && values.length > 0) {
values.forEach((/**
* @param {?} value
* @return {?}
*/
(value) => {
if (this.to.options !== undefined && this.to.options !== null) {
this.to.options.forEach((/**
* @param {?} option
* @return {?}
*/
(option) => {
if (option["value"] === value) {
res.push(value);
}
}));
}
}));
}
this.formControl.patchValue(values);
this.formControl.markAsTouched();
}
/**
* @param {?} option
* @return {?}
*/
getCheckStatus(option) {
this.formControl.value;
}
/**
* @param {?} values
* @param {?} option
* @return {?}
*/
getControlChecked(values, option) {
/** @type {?} */
let result = false;
if (option && values) {
result = values.some((/**
* @param {?} value
* @return {?}
*/
(value) => {
return value == option.value;
}));
}
return result;
}
}
KreFormFieldCheckboxGroup.decorators = [
{ type: Component, args: [{
selector: "krefield-checkboxgroup",
template: `
<ng-container *ngIf="formStatus !== 0; else other">
<div class="control-design">
<nz-checkbox-wrapper
style="width: 100%;"
(nzOnChange)="onChange($event)"
[class.is-invalid]="showError"
>
<ng-container *ngFor="let option of to.options; let i = index">
<label
nz-checkbox
[nzValue]="option.value"
[ngModel]="getControlChecked(formControl.value, option)"
[kreFormAttributes]="field"
disabled
>{{ option.label }}</label
>
</ng-container>
</nz-checkbox-wrapper>
</div>
</ng-container>
<ng-template #other>
<ng-container *ngIf="editor === true">
<nz-checkbox-wrapper
style="width: 100%;"
(nzOnChange)="onChange($event)"
[class.is-invalid]="showError"
>
<ng-container *ngFor="let option of to.options; let i = index">
<label
nz-checkbox
[nzValue]="option.value"
[ngModel]="getControlChecked(formControl.value, option)"
[kreFormAttributes]="field"
>{{ option.label }}</label
>
</ng-container>
</nz-checkbox-wrapper>
<!-- <div class="tips">
<i
class="icon-bangzhu"
[nzTooltipTitle]="tips"
nzTooltipPlacement="top"
nz-tooltip
*ngIf="tips != ''"
></i>
</div> -->
</ng-container>
<div class="fieldtext" *ngIf="editor === false">{{ textMultiple }}</div>
</ng-template>
`
}] }
];
if (false) {
/** @type {?} */
KreFormFieldCheckboxGroup.prototype.guid;
}
/**
* @record
*/
export function ICheckValues() { }
if (false) {
/** @type {?} */
ICheckValues.prototype.value;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hlY2tib3hncm91cC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BrcmUtZm9ybS9hbnQvIiwic291cmNlcyI6WyJsaWIvdHlwZXMvY2hlY2tib3hncm91cC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMxQyxPQUFPLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBMERqRCxNQUFNLE9BQU8seUJBQTBCLFNBQVEsU0FBUztJQXZEeEQ7O1FBd0RFLFNBQUksR0FBUSxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUMsT0FBTyxDQUFDLENBQUM7SUFnQ3JDLENBQUM7Ozs7O0lBOUJDLFFBQVEsQ0FBQyxNQUFnQjs7WUFDbkIsR0FBRyxHQUFRLEVBQUU7UUFDakIsSUFBSSxNQUFNLElBQUksU0FBUyxJQUFJLE1BQU0sSUFBSSxJQUFJLElBQUksTUFBTSxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUU7WUFDOUQsTUFBTSxDQUFDLE9BQU87Ozs7WUFBQyxDQUFDLEtBQUssRUFBRSxFQUFFO2dCQUN2QixJQUFJLElBQUksQ0FBQyxFQUFFLENBQUMsT0FBTyxLQUFLLFNBQVMsSUFBSSxJQUFJLENBQUMsRUFBRSxDQUFDLE9BQU8sS0FBSyxJQUFJLEVBQUU7b0JBQzdELElBQUksQ0FBQyxFQUFFLENBQUMsT0FBTyxDQUFDLE9BQU87Ozs7b0JBQUMsQ0FBQyxNQUFXLEVBQUUsRUFBRTt3QkFDdEMsSUFBSSxNQUFNLENBQUMsT0FBTyxDQUFDLEtBQUssS0FBSyxFQUFFOzRCQUM3QixHQUFHLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO3lCQUNqQjtvQkFDSCxDQUFDLEVBQUMsQ0FBQztpQkFDSjtZQUNILENBQUMsRUFBQyxDQUFDO1NBQ0o7UUFDRCxJQUFJLENBQUMsV0FBVyxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUNwQyxJQUFJLENBQUMsV0FBVyxDQUFDLGFBQWEsRUFBRSxDQUFDO0lBQ25DLENBQUM7Ozs7O0lBRUQsY0FBYyxDQUFDLE1BQVc7UUFDeEIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUM7SUFDekIsQ0FBQzs7Ozs7O0lBRU0saUJBQWlCLENBQUMsTUFBVyxFQUFFLE1BQVc7O1lBQzNDLE1BQU0sR0FBRyxLQUFLO1FBQ2xCLElBQUksTUFBTSxJQUFJLE1BQU0sRUFBRTtZQUNwQixNQUFNLEdBQUcsTUFBTSxDQUFDLElBQUk7Ozs7WUFBQyxDQUFDLEtBQVUsRUFBRSxFQUFFO2dCQUNsQyxPQUFPLEtBQUssSUFBSSxNQUFNLENBQUMsS0FBSyxDQUFDO1lBQy9CLENBQUMsRUFBQyxDQUFDO1NBQ0o7UUFDRCxPQUFPLE1BQU0sQ0FBQztJQUNoQixDQUFDOzs7WUF2RkYsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSx3QkFBd0I7Z0JBQ2xDLFFBQVEsRUFBRTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBbURUO2FBQ0Y7Ozs7SUFFQyx5Q0FBbUM7Ozs7O0FBa0NyQyxrQ0FFQzs7O0lBREMsNkJBQVciLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgRmllbGRUeXBlLCBHdWlkIH0gZnJvbSBcIkBrcmUtZm9ybS9jb3JlXCI7XG5pbXBvcnQgeyBLcmVGb3JtQW50U2VydmljZSB9IGZyb20gXCIuLi90b29scy9zZXJ2aWNlXCI7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogXCJrcmVmaWVsZC1jaGVja2JveGdyb3VwXCIsXG4gIHRlbXBsYXRlOiBgXG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImZvcm1TdGF0dXMgIT09IDA7IGVsc2Ugb3RoZXJcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJjb250cm9sLWRlc2lnblwiPlxuICAgICAgICA8bnotY2hlY2tib3gtd3JhcHBlclxuICAgICAgICAgIHN0eWxlPVwid2lkdGg6IDEwMCU7XCJcbiAgICAgICAgICAobnpPbkNoYW5nZSk9XCJvbkNoYW5nZSgkZXZlbnQpXCJcbiAgICAgICAgICBbY2xhc3MuaXMtaW52YWxpZF09XCJzaG93RXJyb3JcIlxuICAgICAgICA+XG4gICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgb3B0aW9uIG9mIHRvLm9wdGlvbnM7IGxldCBpID0gaW5kZXhcIj5cbiAgICAgICAgICAgIDxsYWJlbFxuICAgICAgICAgICAgICBuei1jaGVja2JveFxuICAgICAgICAgICAgICBbbnpWYWx1ZV09XCJvcHRpb24udmFsdWVcIlxuICAgICAgICAgICAgICBbbmdNb2RlbF09XCJnZXRDb250cm9sQ2hlY2tlZChmb3JtQ29udHJvbC52YWx1ZSwgb3B0aW9uKVwiXG4gICAgICAgICAgICAgIFtrcmVGb3JtQXR0cmlidXRlc109XCJmaWVsZFwiXG4gICAgICAgICAgICAgIGRpc2FibGVkXG4gICAgICAgICAgICAgID57eyBvcHRpb24ubGFiZWwgfX08L2xhYmVsXG4gICAgICAgICAgICA+XG4gICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgIDwvbnotY2hlY2tib3gtd3JhcHBlcj5cbiAgICAgIDwvZGl2PlxuICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgPG5nLXRlbXBsYXRlICNvdGhlcj5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJlZGl0b3IgPT09IHRydWVcIj5cbiAgICAgICAgPG56LWNoZWNrYm94LXdyYXBwZXJcbiAgICAgICAgICBzdHlsZT1cIndpZHRoOiAxMDAlO1wiXG4gICAgICAgICAgKG56T25DaGFuZ2UpPVwib25DaGFuZ2UoJGV2ZW50KVwiXG4gICAgICAgICAgW2NsYXNzLmlzLWludmFsaWRdPVwic2hvd0Vycm9yXCJcbiAgICAgICAgPlxuICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IG9wdGlvbiBvZiB0by5vcHRpb25zOyBsZXQgaSA9IGluZGV4XCI+XG4gICAgICAgICAgICA8bGFiZWxcbiAgICAgICAgICAgICAgbnotY2hlY2tib3hcbiAgICAgICAgICAgICAgW256VmFsdWVdPVwib3B0aW9uLnZhbHVlXCJcbiAgICAgICAgICAgICAgW25nTW9kZWxdPVwiZ2V0Q29udHJvbENoZWNrZWQoZm9ybUNvbnRyb2wudmFsdWUsIG9wdGlvbilcIlxuICAgICAgICAgICAgICBba3JlRm9ybUF0dHJpYnV0ZXNdPVwiZmllbGRcIlxuICAgICAgICAgICAgICA+e3sgb3B0aW9uLmxhYmVsIH19PC9sYWJlbFxuICAgICAgICAgICAgPlxuICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICA8L256LWNoZWNrYm94LXdyYXBwZXI+XG4gICAgICAgIDwhLS0gPGRpdiBjbGFzcz1cInRpcHNcIj5cbiAgICAgICAgICA8aVxuICAgICAgICAgICAgY2xhc3M9XCJpY29uLWJhbmd6aHVcIlxuICAgICAgICAgICAgW256VG9vbHRpcFRpdGxlXT1cInRpcHNcIlxuICAgICAgICAgICAgbnpUb29sdGlwUGxhY2VtZW50PVwidG9wXCJcbiAgICAgICAgICAgIG56LXRvb2x0aXBcbiAgICAgICAgICAgICpuZ0lmPVwidGlwcyAhPSAnJ1wiXG4gICAgICAgICAgPjwvaT5cbiAgICAgICAgPC9kaXY+IC0tPlxuICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICA8ZGl2IGNsYXNzPVwiZmllbGR0ZXh0XCIgKm5nSWY9XCJlZGl0b3IgPT09IGZhbHNlXCI+e3sgdGV4dE11bHRpcGxlIH19PC9kaXY+XG4gICAgPC9uZy10ZW1wbGF0ZT5cbiAgYCxcbn0pXG5leHBvcnQgY2xhc3MgS3JlRm9ybUZpZWxkQ2hlY2tib3hHcm91cCBleHRlbmRzIEZpZWxkVHlwZSB7XG4gIGd1aWQ6IGFueSA9IEd1aWQuY3JlYXRlKClbXCJ2YWx1ZVwiXTtcblxuICBvbkNoYW5nZSh2YWx1ZXM6IHN0cmluZ1tdKSB7XG4gICAgbGV0IHJlczogYW55ID0gW107XG4gICAgaWYgKHZhbHVlcyAhPSB1bmRlZmluZWQgJiYgdmFsdWVzICE9IG51bGwgJiYgdmFsdWVzLmxlbmd0aCA+IDApIHtcbiAgICAgIHZhbHVlcy5mb3JFYWNoKCh2YWx1ZSkgPT4ge1xuICAgICAgICBpZiAodGhpcy50by5vcHRpb25zICE9PSB1bmRlZmluZWQgJiYgdGhpcy50by5vcHRpb25zICE9PSBudWxsKSB7XG4gICAgICAgICAgdGhpcy50by5vcHRpb25zLmZvckVhY2goKG9wdGlvbjogYW55KSA9PiB7XG4gICAgICAgICAgICBpZiAob3B0aW9uW1widmFsdWVcIl0gPT09IHZhbHVlKSB7XG4gICAgICAgICAgICAgIHJlcy5wdXNoKHZhbHVlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfVxuICAgIHRoaXMuZm9ybUNvbnRyb2wucGF0Y2hWYWx1ZSh2YWx1ZXMpO1xuICAgIHRoaXMuZm9ybUNvbnRyb2wubWFya0FzVG91Y2hlZCgpO1xuICB9XG5cbiAgZ2V0Q2hlY2tTdGF0dXMob3B0aW9uOiBhbnkpIHtcbiAgICB0aGlzLmZvcm1Db250cm9sLnZhbHVlO1xuICB9XG5cbiAgcHVibGljIGdldENvbnRyb2xDaGVja2VkKHZhbHVlczogYW55LCBvcHRpb246IGFueSkge1xuICAgIGxldCByZXN1bHQgPSBmYWxzZTtcbiAgICBpZiAob3B0aW9uICYmIHZhbHVlcykge1xuICAgICAgcmVzdWx0ID0gdmFsdWVzLnNvbWUoKHZhbHVlOiBhbnkpID0+IHtcbiAgICAgICAgcmV0dXJuIHZhbHVlID09IG9wdGlvbi52YWx1ZTtcbiAgICAgIH0pO1xuICAgIH1cbiAgICByZXR1cm4gcmVzdWx0O1xuICB9XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUNoZWNrVmFsdWVzIHtcbiAgdmFsdWU6IGFueTtcbn1cbiJdfQ==