@kre-form/survey
Version:
173 lines (171 loc) • 12.7 kB
JavaScript
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
import { Component } from "@angular/core";
import { FieldType } from "@kre-form/core";
import { KreFormAntService } from "../tools/service";
//cdkDrag
import { moveItemInArray } from "@angular/cdk/drag-drop";
export class KreSurveyDragDrop extends FieldType {
/**
* @param {?} dyService
*/
constructor(dyService) {
super();
this.service = dyService;
}
/**
* @return {?}
*/
get insertQuestionIndex() {
/** @type {?} */
let result = -1;
if (this.to.index) {
result = this.to.index;
}
return result;
}
/**
* @param {?} event
* @return {?}
*/
drop(event) {
if (event.previousContainer === event.container) {
moveItemInArray(event.container.data, event.previousIndex, event.currentIndex);
}
else {
this.service.dragDropOperational(event.previousContainer.data, event.previousIndex, event.currentIndex);
}
}
/**
* @param {?} sign
* @return {?}
*/
fieldOperational(sign) {
this.service.fieldOperational(sign, this.field);
}
//设置逻辑
/**
* @param {?} field
* @return {?}
*/
logicQuestion(field) {
this.service.questionOperational("logic", field);
}
//拷贝题目
/**
* @param {?} field
* @return {?}
*/
copyQuestion(field) {
this.service.questionOperational("copy", field);
}
//删除题目
/**
* @param {?} field
* @return {?}
*/
delQuestion(field) {
this.service.questionOperational("delete", field);
}
//点击题目
/**
* @param {?} field
* @return {?}
*/
activeQuestion(field) {
if (!this.field.active) {
this.service.questionOperational("active", field);
}
}
}
KreSurveyDragDrop.decorators = [
{ type: Component, args: [{
selector: "kresurvey-drag-drop",
template: `
<div
class="formly-drag-drop"
(cdkDropListDropped)="drop($event)"
cdkDropList
[cdkDropListData]="field.fieldGroup"
>
<div class="formly-drag-drop">
<ng-container *ngFor="let field of field.fieldGroup; let index = index">
<div
(click)="activeQuestion(field)"
*ngIf="field.active == true"
class="formly-drag-drop_wrap active"
>
<div class="field-operate">
<span
(click)="logicQuestion(field)"
nzTooltipTitle="逻辑设置"
nzTooltipPlacement="top"
nz-tooltip
>设置</span
>
<span
(click)="copyQuestion(field)"
nzTooltipTitle="复制题目"
nzTooltipPlacement="top"
nz-tooltip
>复制</span
>
<span
(click)="delQuestion(field)"
nzTooltipTitle="删除题目"
nzTooltipPlacement="top"
nz-tooltip
>删除</span
>
</div>
<div class="field-content">
<kreform-field
[field]="field"
[rowNumber]="index + 1"
></kreform-field>
</div>
</div>
<div
(click)="activeQuestion(field)"
*ngIf="field.active != true"
class="formly-drag-drop_wrap"
cdkDrag
>
<div class="field-content">
<kreform-field
[field]="field"
[rowNumber]="index + 1"
></kreform-field>
</div>
</div>
</ng-container>
</div>
<ng-container
*ngIf="field.fieldGroup == null || field.fieldGroup.length == 0"
>
<div class="formly_empty">
<div
class="formly-drag-drop"
(cdkDropListDropped)="drop($event)"
cdkDropList
[cdkDropListData]="field.fieldGroup"
>
请把题型拖入此区域
</div>
</div>
</ng-container>
</div>
`
}] }
];
/** @nocollapse */
KreSurveyDragDrop.ctorParameters = () => [
{ type: KreFormAntService }
];
if (false) {
/** @type {?} */
KreSurveyDragDrop.prototype.service;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJhZy1kcm9wLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGtyZS1mb3JtL3N1cnZleS8iLCJzb3VyY2VzIjpbImxpYi90eXBlcy9kcmFnLWRyb3AudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUMsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzNDLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGtCQUFrQixDQUFDOztBQUVyRCxPQUFPLEVBQWUsZUFBZSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFpRnRFLE1BQU0sT0FBTyxpQkFBa0IsU0FBUSxTQUFTOzs7O0lBVTlDLFlBQVksU0FBNEI7UUFDdEMsS0FBSyxFQUFFLENBQUM7UUFDUixJQUFJLENBQUMsT0FBTyxHQUFHLFNBQVMsQ0FBQztJQUMzQixDQUFDOzs7O0lBVkQsSUFBSSxtQkFBbUI7O1lBQ2pCLE1BQU0sR0FBRyxDQUFDLENBQUM7UUFDZixJQUFJLElBQUksQ0FBQyxFQUFFLENBQUMsS0FBSyxFQUFFO1lBQ2pCLE1BQU0sR0FBRyxJQUFJLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQztTQUN4QjtRQUNELE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7Ozs7O0lBTUQsSUFBSSxDQUFDLEtBQTRCO1FBQy9CLElBQUksS0FBSyxDQUFDLGlCQUFpQixLQUFLLEtBQUssQ0FBQyxTQUFTLEVBQUU7WUFDL0MsZUFBZSxDQUNiLEtBQUssQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUNwQixLQUFLLENBQUMsYUFBYSxFQUNuQixLQUFLLENBQUMsWUFBWSxDQUNuQixDQUFDO1NBQ0g7YUFBTTtZQUNMLElBQUksQ0FBQyxPQUFPLENBQUMsbUJBQW1CLENBQzlCLEtBQUssQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLEVBQzVCLEtBQUssQ0FBQyxhQUFhLEVBQ25CLEtBQUssQ0FBQyxZQUFZLENBQ25CLENBQUM7U0FDSDtJQUNILENBQUM7Ozs7O0lBQ0QsZ0JBQWdCLENBQUMsSUFBWTtRQUMzQixJQUFJLENBQUMsT0FBTyxDQUFDLGdCQUFnQixDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDbEQsQ0FBQzs7Ozs7O0lBR0QsYUFBYSxDQUFDLEtBQVU7UUFDdEIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxtQkFBbUIsQ0FBQyxPQUFPLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDbkQsQ0FBQzs7Ozs7O0lBRUQsWUFBWSxDQUFDLEtBQVU7UUFDckIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxtQkFBbUIsQ0FBQyxNQUFNLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDbEQsQ0FBQzs7Ozs7O0lBRUQsV0FBVyxDQUFDLEtBQVU7UUFDcEIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxtQkFBbUIsQ0FBQyxRQUFRLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDcEQsQ0FBQzs7Ozs7O0lBRUQsY0FBYyxDQUFDLEtBQVU7UUFDdkIsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxFQUFFO1lBQ3RCLElBQUksQ0FBQyxPQUFPLENBQUMsbUJBQW1CLENBQUMsUUFBUSxFQUFFLEtBQUssQ0FBQyxDQUFDO1NBQ25EO0lBQ0gsQ0FBQzs7O1lBbklGLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUscUJBQXFCO2dCQUMvQixRQUFRLEVBQUU7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0E0RVQ7YUFDRjs7OztZQWxGUSxpQkFBaUI7Ozs7SUFvRnhCLG9DQUFhIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50IH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHsgRmllbGRUeXBlIH0gZnJvbSBcIkBrcmUtZm9ybS9jb3JlXCI7XHJcbmltcG9ydCB7IEtyZUZvcm1BbnRTZXJ2aWNlIH0gZnJvbSBcIi4uL3Rvb2xzL3NlcnZpY2VcIjtcclxuLy9jZGtEcmFnXHJcbmltcG9ydCB7IENka0RyYWdEcm9wLCBtb3ZlSXRlbUluQXJyYXkgfSBmcm9tIFwiQGFuZ3VsYXIvY2RrL2RyYWctZHJvcFwiO1xyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogXCJrcmVzdXJ2ZXktZHJhZy1kcm9wXCIsXHJcbiAgdGVtcGxhdGU6IGBcclxuICAgIDxkaXZcclxuICAgICAgY2xhc3M9XCJmb3JtbHktZHJhZy1kcm9wXCJcclxuICAgICAgKGNka0Ryb3BMaXN0RHJvcHBlZCk9XCJkcm9wKCRldmVudClcIlxyXG4gICAgICBjZGtEcm9wTGlzdFxyXG4gICAgICBbY2RrRHJvcExpc3REYXRhXT1cImZpZWxkLmZpZWxkR3JvdXBcIlxyXG4gICAgPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiZm9ybWx5LWRyYWctZHJvcFwiPlxyXG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGZpZWxkIG9mIGZpZWxkLmZpZWxkR3JvdXA7IGxldCBpbmRleCA9IGluZGV4XCI+XHJcbiAgICAgICAgICA8ZGl2XHJcbiAgICAgICAgICAgIChjbGljayk9XCJhY3RpdmVRdWVzdGlvbihmaWVsZClcIlxyXG4gICAgICAgICAgICAqbmdJZj1cImZpZWxkLmFjdGl2ZSA9PSB0cnVlXCJcclxuICAgICAgICAgICAgY2xhc3M9XCJmb3JtbHktZHJhZy1kcm9wX3dyYXAgYWN0aXZlXCJcclxuICAgICAgICAgID5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZpZWxkLW9wZXJhdGVcIj5cclxuICAgICAgICAgICAgICA8c3BhblxyXG4gICAgICAgICAgICAgICAgKGNsaWNrKT1cImxvZ2ljUXVlc3Rpb24oZmllbGQpXCJcclxuICAgICAgICAgICAgICAgIG56VG9vbHRpcFRpdGxlPVwi6YC76L6R6K6+572uXCJcclxuICAgICAgICAgICAgICAgIG56VG9vbHRpcFBsYWNlbWVudD1cInRvcFwiXHJcbiAgICAgICAgICAgICAgICBuei10b29sdGlwXHJcbiAgICAgICAgICAgICAgICA+6K6+572uPC9zcGFuXHJcbiAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgIDxzcGFuXHJcbiAgICAgICAgICAgICAgICAoY2xpY2spPVwiY29weVF1ZXN0aW9uKGZpZWxkKVwiXHJcbiAgICAgICAgICAgICAgICBuelRvb2x0aXBUaXRsZT1cIuWkjeWItumimOebrlwiXHJcbiAgICAgICAgICAgICAgICBuelRvb2x0aXBQbGFjZW1lbnQ9XCJ0b3BcIlxyXG4gICAgICAgICAgICAgICAgbnotdG9vbHRpcFxyXG4gICAgICAgICAgICAgICAgPuWkjeWItjwvc3BhblxyXG4gICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICA8c3BhblxyXG4gICAgICAgICAgICAgICAgKGNsaWNrKT1cImRlbFF1ZXN0aW9uKGZpZWxkKVwiXHJcbiAgICAgICAgICAgICAgICBuelRvb2x0aXBUaXRsZT1cIuWIoOmZpOmimOebrlwiXHJcbiAgICAgICAgICAgICAgICBuelRvb2x0aXBQbGFjZW1lbnQ9XCJ0b3BcIlxyXG4gICAgICAgICAgICAgICAgbnotdG9vbHRpcFxyXG4gICAgICAgICAgICAgICAgPuWIoOmZpDwvc3BhblxyXG4gICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmaWVsZC1jb250ZW50XCI+XHJcbiAgICAgICAgICAgICAgPGtyZWZvcm0tZmllbGRcclxuICAgICAgICAgICAgICAgIFtmaWVsZF09XCJmaWVsZFwiXHJcbiAgICAgICAgICAgICAgICBbcm93TnVtYmVyXT1cImluZGV4ICsgMVwiXHJcbiAgICAgICAgICAgICAgPjwva3JlZm9ybS1maWVsZD5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICA8ZGl2XHJcbiAgICAgICAgICAgIChjbGljayk9XCJhY3RpdmVRdWVzdGlvbihmaWVsZClcIlxyXG4gICAgICAgICAgICAqbmdJZj1cImZpZWxkLmFjdGl2ZSAhPSB0cnVlXCJcclxuICAgICAgICAgICAgY2xhc3M9XCJmb3JtbHktZHJhZy1kcm9wX3dyYXBcIlxyXG4gICAgICAgICAgICBjZGtEcmFnXHJcbiAgICAgICAgICA+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmaWVsZC1jb250ZW50XCI+XHJcbiAgICAgICAgICAgICAgPGtyZWZvcm0tZmllbGRcclxuICAgICAgICAgICAgICAgIFtmaWVsZF09XCJmaWVsZFwiXHJcbiAgICAgICAgICAgICAgICBbcm93TnVtYmVyXT1cImluZGV4ICsgMVwiXHJcbiAgICAgICAgICAgICAgPjwva3JlZm9ybS1maWVsZD5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgPC9kaXY+XHJcblxyXG4gICAgICA8bmctY29udGFpbmVyXHJcbiAgICAgICAgKm5nSWY9XCJmaWVsZC5maWVsZEdyb3VwID09IG51bGwgfHwgZmllbGQuZmllbGRHcm91cC5sZW5ndGggPT0gMFwiXHJcbiAgICAgID5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiZm9ybWx5X2VtcHR5XCI+XHJcbiAgICAgICAgICA8ZGl2XHJcbiAgICAgICAgICAgIGNsYXNzPVwiZm9ybWx5LWRyYWctZHJvcFwiXHJcbiAgICAgICAgICAgIChjZGtEcm9wTGlzdERyb3BwZWQpPVwiZHJvcCgkZXZlbnQpXCJcclxuICAgICAgICAgICAgY2RrRHJvcExpc3RcclxuICAgICAgICAgICAgW2Nka0Ryb3BMaXN0RGF0YV09XCJmaWVsZC5maWVsZEdyb3VwXCJcclxuICAgICAgICAgID5cclxuICAgICAgICAgICAg6K+35oqK6aKY5Z6L5ouW5YWl5q2k5Yy65Z+fXHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICA8L2Rpdj5cclxuICBgLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgS3JlU3VydmV5RHJhZ0Ryb3AgZXh0ZW5kcyBGaWVsZFR5cGUge1xyXG4gIHNlcnZpY2U6IGFueTtcclxuXHJcbiAgZ2V0IGluc2VydFF1ZXN0aW9uSW5kZXgoKSB7XHJcbiAgICBsZXQgcmVzdWx0ID0gLTE7XHJcbiAgICBpZiAodGhpcy50by5pbmRleCkge1xyXG4gICAgICByZXN1bHQgPSB0aGlzLnRvLmluZGV4O1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIHJlc3VsdDtcclxuICB9XHJcbiAgY29uc3RydWN0b3IoZHlTZXJ2aWNlOiBLcmVGb3JtQW50U2VydmljZSkge1xyXG4gICAgc3VwZXIoKTtcclxuICAgIHRoaXMuc2VydmljZSA9IGR5U2VydmljZTtcclxuICB9XHJcblxyXG4gIGRyb3AoZXZlbnQ6IENka0RyYWdEcm9wPHN0cmluZ1tdPikge1xyXG4gICAgaWYgKGV2ZW50LnByZXZpb3VzQ29udGFpbmVyID09PSBldmVudC5jb250YWluZXIpIHtcclxuICAgICAgbW92ZUl0ZW1JbkFycmF5KFxyXG4gICAgICAgIGV2ZW50LmNvbnRhaW5lci5kYXRhLFxyXG4gICAgICAgIGV2ZW50LnByZXZpb3VzSW5kZXgsXHJcbiAgICAgICAgZXZlbnQuY3VycmVudEluZGV4XHJcbiAgICAgICk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLnNlcnZpY2UuZHJhZ0Ryb3BPcGVyYXRpb25hbChcclxuICAgICAgICBldmVudC5wcmV2aW91c0NvbnRhaW5lci5kYXRhLFxyXG4gICAgICAgIGV2ZW50LnByZXZpb3VzSW5kZXgsXHJcbiAgICAgICAgZXZlbnQuY3VycmVudEluZGV4XHJcbiAgICAgICk7XHJcbiAgICB9XHJcbiAgfVxyXG4gIGZpZWxkT3BlcmF0aW9uYWwoc2lnbjogc3RyaW5nKSB7XHJcbiAgICB0aGlzLnNlcnZpY2UuZmllbGRPcGVyYXRpb25hbChzaWduLCB0aGlzLmZpZWxkKTtcclxuICB9XHJcblxyXG4gIC8v6K6+572u6YC76L6RXHJcbiAgbG9naWNRdWVzdGlvbihmaWVsZDogYW55KSB7XHJcbiAgICB0aGlzLnNlcnZpY2UucXVlc3Rpb25PcGVyYXRpb25hbChcImxvZ2ljXCIsIGZpZWxkKTtcclxuICB9XHJcbiAgLy/mi7fotJ3popjnm65cclxuICBjb3B5UXVlc3Rpb24oZmllbGQ6IGFueSkge1xyXG4gICAgdGhpcy5zZXJ2aWNlLnF1ZXN0aW9uT3BlcmF0aW9uYWwoXCJjb3B5XCIsIGZpZWxkKTtcclxuICB9XHJcbiAgLy/liKDpmaTpopjnm65cclxuICBkZWxRdWVzdGlvbihmaWVsZDogYW55KSB7XHJcbiAgICB0aGlzLnNlcnZpY2UucXVlc3Rpb25PcGVyYXRpb25hbChcImRlbGV0ZVwiLCBmaWVsZCk7XHJcbiAgfVxyXG4gIC8v54K55Ye76aKY55uuXHJcbiAgYWN0aXZlUXVlc3Rpb24oZmllbGQ6IGFueSkge1xyXG4gICAgaWYgKCF0aGlzLmZpZWxkLmFjdGl2ZSkge1xyXG4gICAgICB0aGlzLnNlcnZpY2UucXVlc3Rpb25PcGVyYXRpb25hbChcImFjdGl2ZVwiLCBmaWVsZCk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiJdfQ==