@kre-form/survey
Version:
157 lines • 13.7 kB
JavaScript
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
import { Injectable } from "@angular/core";
import { KreRadioService } from './radio_Service';
import { KreCheckboxService } from './checkbox_Service';
import { KreInputService } from './input_Service';
import { KreCascaderService } from './cascader_Service';
import { KreOtherService } from './other_Service';
import { KreMatrixService } from './matrix_Service';
var KreTransferService = /** @class */ (function () {
function KreTransferService(kreRadioService, kreCheckboxService, kreInputService, kreCascaderService, kreOtherService, kreMatrixService) {
this.kreRadioService = kreRadioService;
this.kreCheckboxService = kreCheckboxService;
this.kreInputService = kreInputService;
this.kreCascaderService = kreCascaderService;
this.kreOtherService = kreOtherService;
this.kreMatrixService = kreMatrixService;
}
/**
* @param {?} questionType
* @param {?} form_fields
* @param {?} currentIndex
* @return {?}
*/
KreTransferService.prototype.transferQuestionByType = /**
* @param {?} questionType
* @param {?} form_fields
* @param {?} currentIndex
* @return {?}
*/
function (questionType, form_fields, currentIndex) {
if (questionType != undefined && questionType != null && questionType.type != undefined && questionType.type != null) {
/** @type {?} */
var obj = this.initQuestion(questionType);
if (currentIndex > -1) {
form_fields.splice(currentIndex, 0, obj);
}
else {
form_fields.push(obj);
}
}
};
/**
* @private
* @param {?} questionType
* @return {?}
*/
KreTransferService.prototype.initQuestion = /**
* @private
* @param {?} questionType
* @return {?}
*/
function (questionType) {
/** @type {?} */
var question = {};
switch (questionType.type) {
case "radio":
question = this.kreRadioService.create_radio(questionType);
break;
case "checkbox":
question = this.kreCheckboxService.create_checkbox(questionType);
break;
case "cascader":
question = this.kreCascaderService.create_cascader(questionType);
break;
case "input":
question = this.kreInputService.create_input(questionType);
break;
case "line":
question = this.kreOtherService.create_line();
break;
case "remark":
question = this.kreOtherService.create_remark();
break;
case "date":
question = this.kreOtherService.create_date();
break;
case "time":
question = this.kreOtherService.create_time();
break;
case "dropdown":
question = this.kreOtherService.create_dropdown();
break;
case "score":
question = this.kreOtherService.create_score();
break;
case "nps":
question = this.kreOtherService.create_nps();
break;
case "proportion":
question = this.kreOtherService.create_proportion();
break;
case "evaluation":
question = this.kreOtherService.create_evaluation();
break;
case "matrix_radio":
case "matrix_checkbox":
case "matrix_score":
case "matrix_input":
question = this.kreMatrixService.create_matrix(questionType);
break;
case "input_group":
question = this.kreOtherService.create_inputGroup();
break;
}
return question;
};
KreTransferService.decorators = [
{ type: Injectable }
];
/** @nocollapse */
KreTransferService.ctorParameters = function () { return [
{ type: KreRadioService },
{ type: KreCheckboxService },
{ type: KreInputService },
{ type: KreCascaderService },
{ type: KreOtherService },
{ type: KreMatrixService }
]; };
return KreTransferService;
}());
export { KreTransferService };
if (false) {
/**
* @type {?}
* @private
*/
KreTransferService.prototype.kreRadioService;
/**
* @type {?}
* @private
*/
KreTransferService.prototype.kreCheckboxService;
/**
* @type {?}
* @private
*/
KreTransferService.prototype.kreInputService;
/**
* @type {?}
* @private
*/
KreTransferService.prototype.kreCascaderService;
/**
* @type {?}
* @private
*/
KreTransferService.prototype.kreOtherService;
/**
* @type {?}
* @private
*/
KreTransferService.prototype.kreMatrixService;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNmZXJTZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGtyZS1mb3JtL3N1cnZleS8iLCJzb3VyY2VzIjpbImxpYi90b29scy90cmFuc2ZlclNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFRbkQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNsRCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUN4RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDbEQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFFcEQ7SUFFRSw0QkFDVSxlQUFnQyxFQUNoQyxrQkFBc0MsRUFDdEMsZUFBZ0MsRUFDaEMsa0JBQXNDLEVBQ3RDLGVBQWdDLEVBQ2hDLGdCQUFrQztRQUxsQyxvQkFBZSxHQUFmLGVBQWUsQ0FBaUI7UUFDaEMsdUJBQWtCLEdBQWxCLGtCQUFrQixDQUFvQjtRQUN0QyxvQkFBZSxHQUFmLGVBQWUsQ0FBaUI7UUFDaEMsdUJBQWtCLEdBQWxCLGtCQUFrQixDQUFvQjtRQUN0QyxvQkFBZSxHQUFmLGVBQWUsQ0FBaUI7UUFDaEMscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtJQUN4QyxDQUFDOzs7Ozs7O0lBRUwsbURBQXNCOzs7Ozs7SUFBdEIsVUFBdUIsWUFBaUIsRUFBRSxXQUFpQyxFQUFFLFlBQW9CO1FBRS9GLElBQUksWUFBWSxJQUFJLFNBQVMsSUFBSSxZQUFZLElBQUksSUFBSSxJQUFJLFlBQVksQ0FBQyxJQUFJLElBQUksU0FBUyxJQUFJLFlBQVksQ0FBQyxJQUFJLElBQUksSUFBSSxF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QXdDOzs7OztJQUN4QyxnREFBOEM7Ozs7O0lBQzlDLDZDQUF3Qzs7Ozs7SUFDeEMsZ0RBQThDOzs7OztJQUM5Qyw2Q0FBd0M7Ozs7O0lBQ3hDLDhDQUEwQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUsIEluamVjdCB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7XHJcbiAgS3JlVGFibGVGaWVsZENvbmZpZyxcclxuICBLcmVGb3JtRmllbGRDb25maWcsXHJcbiAgR3VpZCxcclxuICBjbG9uZVxyXG59IGZyb20gXCJAa3JlLWZvcm0vY29yZVwiO1xyXG5pbXBvcnQgKiBhcyBfIGZyb20gXCJsb2Rhc2hcIjtcclxuaW1wb3J0IHsgS3JlUmFkaW9TZXJ2aWNlIH0gZnJvbSAnLi9yYWRpb19TZXJ2aWNlJztcclxuaW1wb3J0IHsgS3JlQ2hlY2tib3hTZXJ2aWNlIH0gZnJvbSAnLi9jaGVja2JveF9TZXJ2aWNlJztcclxuaW1wb3J0IHsgS3JlSW5wdXRTZXJ2aWNlIH0gZnJvbSAnLi9pbnB1dF9TZXJ2aWNlJztcclxuaW1wb3J0IHsgS3JlQ2FzY2FkZXJTZXJ2aWNlIH0gZnJvbSAnLi9jYXNjYWRlcl9TZXJ2aWNlJztcclxuaW1wb3J0IHsgS3JlT3RoZXJTZXJ2aWNlIH0gZnJvbSAnLi9vdGhlcl9TZXJ2aWNlJztcclxuaW1wb3J0IHsgS3JlTWF0cml4U2VydmljZSB9IGZyb20gJy4vbWF0cml4X1NlcnZpY2UnO1xyXG5cclxuQEluamVjdGFibGUoKVxyXG5leHBvcnQgY2xhc3MgS3JlVHJhbnNmZXJTZXJ2aWNlIHtcclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUga3JlUmFkaW9TZXJ2aWNlOiBLcmVSYWRpb1NlcnZpY2UsXHJcbiAgICBwcml2YXRlIGtyZUNoZWNrYm94U2VydmljZTogS3JlQ2hlY2tib3hTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBrcmVJbnB1dFNlcnZpY2U6IEtyZUlucHV0U2VydmljZSxcclxuICAgIHByaXZhdGUga3JlQ2FzY2FkZXJTZXJ2aWNlOiBLcmVDYXNjYWRlclNlcnZpY2UsXHJcbiAgICBwcml2YXRlIGtyZU90aGVyU2VydmljZTogS3JlT3RoZXJTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBrcmVNYXRyaXhTZXJ2aWNlOiBLcmVNYXRyaXhTZXJ2aWNlXHJcbiAgKSB7IH1cclxuXHJcbiAgdHJhbnNmZXJRdWVzdGlvbkJ5VHlwZShxdWVzdGlvblR5cGU6IGFueSwgZm9ybV9maWVsZHM6IEtyZUZvcm1GaWVsZENvbmZpZ1tdLCBjdXJyZW50SW5kZXg6IG51bWJlcikge1xyXG5cclxuICAgIGlmIChxdWVzdGlvblR5cGUgIT0gdW5kZWZpbmVkICYmIHF1ZXN0aW9uVHlwZSAhPSBudWxsICYmIHF1ZXN0aW9uVHlwZS50eXBlICE9IHVuZGVmaW5lZCAmJiBxdWVzdGlvblR5cGUudHlwZSAhPSBudWxsKSB7XHJcbiAgICAgIGxldCBvYmo6IEtyZUZvcm1GaWVsZENvbmZpZyA9IHRoaXMuaW5pdFF1ZXN0aW9uKHF1ZXN0aW9uVHlwZSk7XHJcbiAgICAgIGlmIChjdXJyZW50SW5kZXggPiAtMSkge1xyXG4gICAgICAgIGZvcm1fZmllbGRzLnNwbGljZShjdXJyZW50SW5kZXgsIDAsIG9iaik7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgZm9ybV9maWVsZHMucHVzaChvYmopO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGluaXRRdWVzdGlvbihxdWVzdGlvblR5cGU6IGFueSkge1xyXG4gICAgbGV0IHF1ZXN0aW9uOiBLcmVGb3JtRmllbGRDb25maWcgPSB7fTtcclxuICAgIHN3aXRjaCAocXVlc3Rpb25UeXBlLnR5cGUpIHtcclxuICAgICAgY2FzZSBcInJhZGlvXCI6XHJcbiAgICAgICAgcXVlc3Rpb24gPSB0aGlzLmtyZVJhZGlvU2VydmljZS5jcmVhdGVfcmFkaW8ocXVlc3Rpb25UeXBlKTtcclxuICAgICAgICBicmVhaztcclxuXHJcbiAgICAgIGNhc2UgXCJjaGVja2JveFwiOlxyXG4gICAgICAgIHF1ZXN0aW9uID0gdGhpcy5rcmVDaGVja2JveFNlcnZpY2UuY3JlYXRlX2NoZWNrYm94KHF1ZXN0aW9uVHlwZSk7XHJcbiAgICAgICAgYnJlYWs7XHJcblxyXG4gICAgICBjYXNlIFwiY2FzY2FkZXJcIjpcclxuICAgICAgICBxdWVzdGlvbiA9IHRoaXMua3JlQ2FzY2FkZXJTZXJ2aWNlLmNyZWF0ZV9jYXNjYWRlcihxdWVzdGlvblR5cGUpO1xyXG4gICAgICAgIGJyZWFrO1xyXG5cclxuICAgICAgY2FzZSBcImlucHV0XCI6XHJcbiAgICAgICAgcXVlc3Rpb24gPSB0aGlzLmtyZUlucHV0U2VydmljZS5jcmVhdGVfaW5wdXQocXVlc3Rpb25UeXBlKTtcclxuICAgICAgICBicmVhaztcclxuXHJcbiAgICAgIGNhc2UgXCJsaW5lXCI6XHJcbiAgICAgICAgcXVlc3Rpb24gPSB0aGlzLmtyZU90aGVyU2VydmljZS5jcmVhdGVfbGluZSgpO1xyXG4gICAgICAgIGJyZWFrO1xyXG5cclxuICAgICAgY2FzZSBcInJlbWFya1wiOlxyXG4gICAgICAgIHF1ZXN0aW9uID0gdGhpcy5rcmVPdGhlclNlcnZpY2UuY3JlYXRlX3JlbWFyaygpO1xyXG4gICAgICAgIGJyZWFrO1xyXG5cclxuICAgICAgY2FzZSBcImRhdGVcIjpcclxuICAgICAgICBxdWVzdGlvbiA9IHRoaXMua3JlT3RoZXJTZXJ2aWNlLmNyZWF0ZV9kYXRlKCk7XHJcbiAgICAgICAgYnJlYWs7XHJcblxyXG4gICAgICBjYXNlIFwidGltZVwiOlxyXG4gICAgICAgIHF1ZXN0aW9uID0gdGhpcy5rcmVPdGhlclNlcnZpY2UuY3JlYXRlX3RpbWUoKTtcclxuICAgICAgICBicmVhaztcclxuXHJcbiAgICAgIGNhc2UgXCJkcm9wZG93blwiOlxyXG4gICAgICAgIHF1ZXN0aW9uID0gdGhpcy5rcmVPdGhlclNlcnZpY2UuY3JlYXRlX2Ryb3Bkb3duKCk7XHJcbiAgICAgICAgYnJlYWs7XHJcblxyXG4gICAgICBjYXNlIFwic2NvcmVcIjpcclxuICAgICAgICBxdWVzdGlvbiA9IHRoaXMua3JlT3RoZXJTZXJ2aWNlLmNyZWF0ZV9zY29yZSgpO1xyXG4gICAgICAgIGJyZWFrO1xyXG5cclxuICAgICAgY2FzZSBcIm5wc1wiOlxyXG4gICAgICAgIHF1ZXN0aW9uID0gdGhpcy5rcmVPdGhlclNlcnZpY2UuY3JlYXRlX25wcygpO1xyXG4gICAgICAgIGJyZWFrO1xyXG5cclxuICAgICAgY2FzZSBcInByb3BvcnRpb25cIjpcclxuICAgICAgICBxdWVzdGlvbiA9IHRoaXMua3JlT3RoZXJTZXJ2aWNlLmNyZWF0ZV9wcm9wb3J0aW9uKCk7XHJcbiAgICAgICAgYnJlYWs7XHJcblxyXG4gICAgICBjYXNlIFwiZXZhbHVhdGlvblwiOlxyXG4gICAgICAgIHF1ZXN0aW9uID0gdGhpcy5rcmVPdGhlclNlcnZpY2UuY3JlYXRlX2V2YWx1YXRpb24oKTtcclxuICAgICAgICBicmVhaztcclxuXHJcbiAgICAgIGNhc2UgXCJtYXRyaXhfcmFkaW9cIjogXHJcbiAgICAgIGNhc2UgXCJtYXRyaXhfY2hlY2tib3hcIjpcclxuICAgICAgY2FzZSBcIm1hdHJpeF9zY29yZVwiOlxyXG4gICAgICBjYXNlIFwibWF0cml4X2lucHV0XCI6XHJcbiAgICAgICAgcXVlc3Rpb24gPSB0aGlzLmtyZU1hdHJpeFNlcnZpY2UuY3JlYXRlX21hdHJpeChxdWVzdGlvblR5cGUpO1xyXG4gICAgICAgIGJyZWFrO1xyXG5cclxuICAgICAgY2FzZSBcImlucHV0X2dyb3VwXCI6XHJcbiAgICAgICAgICBxdWVzdGlvbiA9IHRoaXMua3JlT3RoZXJTZXJ2aWNlLmNyZWF0ZV9pbnB1dEdyb3VwKCk7XHJcbiAgICAgIGJyZWFrO1xyXG5cclxuICAgIH1cclxuICAgIHJldHVybiBxdWVzdGlvbjtcclxuICB9XHJcblxyXG5cclxufVxyXG4iXX0=