ws-form-builder
Version:
Ionic 2 Form Builder
57 lines • 2.9 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
var core_1 = require("@angular/core");
var form_builder_1 = require("../../providers/form-builder/form-builder");
var WsCheckboxGridComponent = (function () {
function WsCheckboxGridComponent(formBuilder) {
this.formBuilder = formBuilder;
this.answerGiven = new core_1.EventEmitter();
this.isFieldValid = false;
this.showError = false;
}
WsCheckboxGridComponent.prototype.selectOption = function (event, question, i, option) {
var ifRequired = question.required;
question.valid = true;
var checkedCount = 0;
for (var i_1 = 0; i_1 < Object.keys(question.options).length; i_1++) {
//string = string+this.fieldAnswers[i];
if (question.options[i_1]['value']) {
checkedCount++;
}
}
if (ifRequired) {
if (typeof question.maximumChecked !== 'undefined') {
if (checkedCount > question.maximumChecked) {
question.valid = false;
}
}
if (typeof question.minimumChecked !== 'undefined') {
if (checkedCount < question.minimumChecked) {
question.valid = false;
}
}
}
this.answerGiven.emit(question);
};
WsCheckboxGridComponent.prototype.validateAnswer = function (question, string) {
return this.formBuilder.validateAnswer(question, string);
};
WsCheckboxGridComponent.decorators = [
{ type: core_1.Component, args: [{
selector: 'ws-checkbox-grid',
template: "\n <strong>{{question.question}}</strong>\n <ion-grid>\n \t<ion-row>\n \n \t\t<ion-col col-6 *ngFor=\"let option of question.options; let i = index;\">\n \t\t\t<div class=\"checkbox-card\">\n \t\t\t\t\t<ion-checkbox class='card-checkbox-area' [(ngModel)]=\"option.value\" (ionChange)='selectOption($event, question, i, option)'></ion-checkbox>\n \t\t\t\t\t<div class=\"checkbox-card__inner\">\n \t\t\t\t\t\t<ion-icon name=\"{{option.icon}}\"></ion-icon>\n \t\t\t\t\t\t<span class=\"option-label\">{{option.label}}</span>\n \t\t\t\t\t</div>\n \t\t\t</div>\n \t\t </ion-col>\n </ion-row>\n </ion-grid>\n ",
styles: ["\n\n "]
},] },
];
/** @nocollapse */
WsCheckboxGridComponent.ctorParameters = function () { return [
{ type: form_builder_1.FormBuilderProvider, },
]; };
WsCheckboxGridComponent.propDecorators = {
"question": [{ type: core_1.Input, args: ['question',] },],
"answerGiven": [{ type: core_1.Output },],
};
return WsCheckboxGridComponent;
}());
exports.WsCheckboxGridComponent = WsCheckboxGridComponent;
//# sourceMappingURL=ws-checkbox-grid.js.map