@ng-dynamic-forms/core
Version:
A rapid form development library for Angular
29 lines • 4.11 kB
JavaScript
import { __decorate } from "tslib";
import { DynamicFormGroupModel } from "../form-group/dynamic-form-group.model";
import { serializable } from "../../decorator/serializable.decorator";
export const DYNAMIC_FORM_CONTROL_TYPE_CHECKBOX_GROUP = "CHECKBOX_GROUP";
export class DynamicCheckboxGroupModel extends DynamicFormGroupModel {
constructor(config, layout) {
super(config, layout);
this.type = DYNAMIC_FORM_CONTROL_TYPE_CHECKBOX_GROUP;
}
check(...indices) {
indices.forEach(index => this.group[index].checked = true);
}
uncheck(...indices) {
indices.forEach(index => this.group[index].checked = false);
}
checkAll() {
this.group.forEach(model => model.checked = true);
}
uncheckAll() {
this.group.forEach(model => model.checked = false);
}
}
__decorate([
serializable()
], DynamicCheckboxGroupModel.prototype, "group", void 0);
__decorate([
serializable()
], DynamicCheckboxGroupModel.prototype, "type", void 0);
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy1jaGVja2JveC1ncm91cC5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLWR5bmFtaWMtZm9ybXMvY29yZS9zcmMvbGliL21vZGVsL2NoZWNrYm94L2R5bmFtaWMtY2hlY2tib3gtZ3JvdXAubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxxQkFBcUIsRUFBK0IsTUFBTSx3Q0FBd0MsQ0FBQztBQUc1RyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFFdEUsTUFBTSxDQUFDLE1BQU0sd0NBQXdDLEdBQUcsZ0JBQWdCLENBQUM7QUFFekUsTUFBTSxPQUFPLHlCQUEwQixTQUFRLHFCQUFxQjtJQUtoRSxZQUFZLE1BQW1DLEVBQUUsTUFBaUM7UUFDOUUsS0FBSyxDQUFDLE1BQU0sRUFBRSxNQUFNLENBQUMsQ0FBQztRQUhELFNBQUksR0FBVyx3Q0FBd0MsQ0FBQztJQUlqRixDQUFDO0lBRUQsS0FBSyxDQUFDLEdBQUcsT0FBaUI7UUFDdEIsT0FBTyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxDQUFDO0lBQy9ELENBQUM7SUFFRCxPQUFPLENBQUMsR0FBRyxPQUFpQjtRQUN4QixPQUFPLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDLENBQUM7SUFDaEUsQ0FBQztJQUVELFFBQVE7UUFDSixJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLENBQUM7SUFDdEQsQ0FBQztJQUVELFVBQVU7UUFDTixJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDLENBQUM7SUFDdkQsQ0FBQztDQUNKO0FBdkJtQjtJQUFmLFlBQVksRUFBRTt3REFBZ0M7QUFFdEI7SUFBeEIsWUFBWSxFQUFFO3VEQUFrRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IER5bmFtaWNGb3JtR3JvdXBNb2RlbCwgRHluYW1pY0Zvcm1Hcm91cE1vZGVsQ29uZmlnIH0gZnJvbSBcIi4uL2Zvcm0tZ3JvdXAvZHluYW1pYy1mb3JtLWdyb3VwLm1vZGVsXCI7XG5pbXBvcnQgeyBEeW5hbWljQ2hlY2tib3hNb2RlbCB9IGZyb20gXCIuL2R5bmFtaWMtY2hlY2tib3gubW9kZWxcIjtcbmltcG9ydCB7IER5bmFtaWNGb3JtQ29udHJvbExheW91dCB9IGZyb20gXCIuLi9taXNjL2R5bmFtaWMtZm9ybS1jb250cm9sLWxheW91dC5tb2RlbFwiO1xuaW1wb3J0IHsgc2VyaWFsaXphYmxlIH0gZnJvbSBcIi4uLy4uL2RlY29yYXRvci9zZXJpYWxpemFibGUuZGVjb3JhdG9yXCI7XG5cbmV4cG9ydCBjb25zdCBEWU5BTUlDX0ZPUk1fQ09OVFJPTF9UWVBFX0NIRUNLQk9YX0dST1VQID0gXCJDSEVDS0JPWF9HUk9VUFwiO1xuXG5leHBvcnQgY2xhc3MgRHluYW1pY0NoZWNrYm94R3JvdXBNb2RlbCBleHRlbmRzIER5bmFtaWNGb3JtR3JvdXBNb2RlbCB7XG4gICAgQHNlcmlhbGl6YWJsZSgpIGdyb3VwITogRHluYW1pY0NoZWNrYm94TW9kZWxbXTtcblxuICAgIEBzZXJpYWxpemFibGUoKSByZWFkb25seSB0eXBlOiBzdHJpbmcgPSBEWU5BTUlDX0ZPUk1fQ09OVFJPTF9UWVBFX0NIRUNLQk9YX0dST1VQO1xuXG4gICAgY29uc3RydWN0b3IoY29uZmlnOiBEeW5hbWljRm9ybUdyb3VwTW9kZWxDb25maWcsIGxheW91dD86IER5bmFtaWNGb3JtQ29udHJvbExheW91dCkge1xuICAgICAgICBzdXBlcihjb25maWcsIGxheW91dCk7XG4gICAgfVxuXG4gICAgY2hlY2soLi4uaW5kaWNlczogbnVtYmVyW10pOiB2b2lkIHtcbiAgICAgICAgaW5kaWNlcy5mb3JFYWNoKGluZGV4ID0+IHRoaXMuZ3JvdXBbaW5kZXhdLmNoZWNrZWQgPSB0cnVlKTtcbiAgICB9XG5cbiAgICB1bmNoZWNrKC4uLmluZGljZXM6IG51bWJlcltdKTogdm9pZCB7XG4gICAgICAgIGluZGljZXMuZm9yRWFjaChpbmRleCA9PiB0aGlzLmdyb3VwW2luZGV4XS5jaGVja2VkID0gZmFsc2UpO1xuICAgIH1cblxuICAgIGNoZWNrQWxsKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmdyb3VwLmZvckVhY2gobW9kZWwgPT4gbW9kZWwuY2hlY2tlZCA9IHRydWUpO1xuICAgIH1cblxuICAgIHVuY2hlY2tBbGwoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZ3JvdXAuZm9yRWFjaChtb2RlbCA9PiBtb2RlbC5jaGVja2VkID0gZmFsc2UpO1xuICAgIH1cbn1cbiJdfQ==