UNPKG

@kre-form/ant

Version:

873 lines 87.9 kB
/** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ import { Component, Input, Output, EventEmitter, } from "@angular/core"; import { KreFormAntService } from "../../tools/service"; import { KreFormCommonService } from "@kre-form/core"; import { KreDialogService } from "../../service/dialog.service"; import * as _ from "lodash"; import { NzMessageService } from "ng-zorro-antd/message"; import { EventComponent } from "../event/event.component"; /** * @record */ export function FormulaParamsOption() { } if (false) { /** @type {?} */ FormulaParamsOption.prototype.modalTitle; /** @type {?} */ FormulaParamsOption.prototype.title; /** @type {?|undefined} */ FormulaParamsOption.prototype.fieldVariable; } export class TriggerComponent { /** * @param {?} dyService * @param {?} kreDialogService * @param {?} message * @param {?} kreFormCommonService */ constructor(dyService, kreDialogService, message, kreFormCommonService) { this.dyService = dyService; this.kreDialogService = kreDialogService; this.message = message; this.kreFormCommonService = kreFormCommonService; this.business_tables = {}; this.options = []; this.triggerJson = {}; this.calculateRuleJson = {}; this.random = 0; this.actionEvent = new EventEmitter(); this.checkFormulaEvent = new EventEmitter(); this.configFormulaEvent = new EventEmitter(); this.showData = []; this.list = [ { value: "edit", label: "编辑" }, { value: "trigger", label: "触发事件" }, ]; this.tableScroll = { y: "calc( 100vh - 260px)", x: "calc( 100vw - 260px)", }; this.fields = []; this.keyword = ""; this.nzTotal = 0; this.nzPageSizeOptions = [10, 20, 40, 80, 100, 200, 400]; this.nzPageIndex = 1; this.nzPageSize = 20; this.getIsChangePageSize = false; this.time = null; this.EditType = { false: "不可编辑", true: "可编辑", }; this.HideType = { false: "隐藏", true: "显示", }; this.RequireType = { false: "不必填", true: "必填", }; this.TableType = { single: "单记录", multiple: "多记录", }; this.FieldBasicType = { anchor: "字符型", button: "字符型", checkbox: "字符型", text: "字符型", texti18n: "字符型", textarea: "字符型(多行文本)", numbers: "数字型", password: "字符型", radio: "字符型", radiogroup: "字符型", checkboxgroup: "字符型", select: "字符型", datetime: "时间型", "datetime-year": "日期型(年)", "datetime-month": "日期型(年月)", "datetime-date": "日期型", "datetime-time": "时间型", "datetime-datetime": "日期时间型", image: "图片", upload: "附件型", htmlcontent: "字符型", line: "分割线", "drag-drop": "拖拽", group: "组", repeat: "多记录", panel: "组", employee: "字符型", candidate: "字符型", sponsor: "字符型", position: "字符型", tree: "字符型", organizational: "字符型", area: "字符型", job: "字符型", table: "表格", lookup: "字符型", textBtn: "字符型", adjustReportTo: "字符型", refer: "字符型", avatar: "头像", salary: "字符型", editor: "富文本", dimissContract: "字符型", tabular: "字符型", tabularItem: "字符型", }; this.currentShowExpand = -1; this.params = { modalTitle: "设置规则", // app.Attendance.Absenteeism rule title: "规则", fieldVariable: { formFields: [], tableList: [], }, }; this.formFields = []; this.tableList = []; // tableList = { // fields: [ // { // key: "LeaveItem_s1", // label: "事假", // type: "text", // unit: "小时", // }, // ], // key: "", // label: "", // unit: "", // }; this.ruleObj = null; this.codeMirrorOptions = { autoCloseBrackets: true, keywords: [], textWrapping: true, lineWrapping: true, lineNumbers: false, matchBrackets: true, specialChars: /[\u0000-\u001f\u007f\u00ad\u200c-\u200f\u2028\u2029\ufeff]/, mode: "formula", labelMap: null, autofocus: false, }; } /** * @return {?} */ ngOnInit() { } /** * @return {?} */ ngOnChanges() { this.fields = []; /** @type {?} */ const fields = this.business_form.fields; (/** @type {?} */ (fields)).forEach((/** * @param {?} field * @return {?} */ (field) => { if (((/** @type {?} */ (["select", "text", "numbers", "textarea", "upload", "datetime"]))).includes(field.type) || (field.type === "position" && (/** @type {?} */ ((/** @type {?} */ (field)).templateOptions)).selectType === "single")) { this.fields.push(field); } if (field.type === "repeat") { (/** @type {?} */ (((/** @type {?} */ ((/** @type {?} */ ((/** @type {?} */ (field)).fieldArray)).fieldGroup))))).forEach((/** * @param {?} repeatItem * @return {?} */ (repeatItem) => { if (((/** @type {?} */ ([ "select", "text", "numbers", "textarea", "upload", "datetime", ]))).includes(repeatItem.type)) { this.fields.push(repeatItem); } })); } })); /** @type {?} */ let list = []; /** @type {?} */ let tableList = []; if (!!this.business_tables && (/** @type {?} */ (this.business_tables)).primary) { tableList = [ (/** @type {?} */ (this.business_tables)).primary, ...(/** @type {?} */ (this.business_tables)).child.single, ]; list = [...tableList, ...(/** @type {?} */ (this.business_tables)).child.multiple]; (/** @type {?} */ (this.business_tables)).primary["tableType"] = "single"; if (!_.isEmpty((/** @type {?} */ (this.business_tables)).child.single)) { ((/** @type {?} */ ((/** @type {?} */ (this.business_tables)).child.single))).forEach((/** * @param {?} table * @return {?} */ (table) => { table["tableType"] = "single"; })); } if (!_.isEmpty((/** @type {?} */ (this.business_tables)).child.multiple)) { ((/** @type {?} */ ((/** @type {?} */ (this.business_tables)).child.multiple))).forEach((/** * @param {?} table * @return {?} */ (table) => { table["tableType"] = "multiple"; })); } if (!!this.business_tables) { this.fields.forEach((/** * @param {?} field * @return {?} */ (field) => { (/** @type {?} */ (list)).forEach((/** * @param {?} table * @return {?} */ (table) => { ((/** @type {?} */ (table.tableFields))).forEach((/** * @param {?} elem * @return {?} */ (elem) => { if (field.key === elem.fieldCode) { field["tableType"] = table["tableType"]; field["tableName"] = table["tableName"]; field["fieldDataType"] = elem["fieldDataType"]; } })); })); if (((/** @type {?} */ (["text", "numbers", "textarea", "datetime"]))).includes(field.type) || (field.type === "position" && (/** @type {?} */ ((/** @type {?} */ (field)).templateOptions)).selectType === "single")) { /** @type {?} */ let key = ((/** @type {?} */ (field.key))).replaceAll(/\$/g, "."); this.formFields.push({ key, label: (/** @type {?} */ ((/** @type {?} */ (field)).templateOptions)).label, type: field.type, unit: "", }); } })); } // this.params.fieldVariable.formFields = this.formFields; /** @type {?} */ let tableCodeList = []; this.fields.forEach((/** * @param {?} field * @return {?} */ (field) => { if (!field["tableType"]) { if (!(/** @type {?} */ (tableCodeList)).includes(field.tableCode)) { tableCodeList.push(field.tableCode); } field["tableType"] = "multiple"; field["tableName"] = `业务子表${tableCodeList.length}`; } if (!field["fieldDataType"]) { field["fieldDataType"] = this.transLate(field.type, "type", (/** @type {?} */ ((/** @type {?} */ (field)).templateOptions)).selectType); } })); this.nzTotal = this.fields.length; this.getShowDate(); // 自定义时间收集可处理字段 this.params.fieldVariable.tableList = []; this.tableList = []; /** @type {?} */ let fields = _.cloneDeep(this.fields); // console.log(fields); fields.forEach((/** * @param {?} field * @return {?} */ (field) => { if (((/** @type {?} */ ([ "text", "numbers", // "textarea", "datetime", ]))).includes(field.type) || (field.type === "position" && (/** @type {?} */ ((/** @type {?} */ (field)).templateOptions)).selectType === "single")) { if (this.tableList.findIndex((/** * @param {?} table * @return {?} */ (table) => table.key === field.tableCode)) > -1) { /** @type {?} */ let index = this.tableList.findIndex((/** * @param {?} table * @return {?} */ (table) => table.key === field.tableCode)); // console.log(field.templateOptions.label); ((/** @type {?} */ (this.tableList[index].fields))).push({ key: ((/** @type {?} */ (field.key))).replace(/\$/g, "."), label: `${field.templateOptions.label}--${field.fieldDataType}`, type: field.type, unit: "", tableType: field.tableType, }); } else { /** @type {?} */ let fields = []; fields.push({ key: ((/** @type {?} */ (field.key))).replace(/\$/g, "."), label: `${field.templateOptions.label}--${field.fieldDataType}`, type: field.type, unit: "", tableType: field.tableType, }); this.tableList.push({ fields, key: field.tableCode, label: field.tableName, tableType: field.tableType, }); } } })); this.params.fieldVariable.tableList = this.tableList; } // console.log(this.tableList); } /** * @return {?} */ getShowDate() { this.showData = []; for (let i = (this.nzPageIndex - 1) * this.nzPageSize; i < this.nzPageIndex * this.nzPageSize; i++) { if (!!this.fields[i]) { this.showData.push(this.fields[i]); } } } /** * @param {?} e * @return {?} */ nzPageIndexChange(e) { if (this.getIsChangePageSize) { clearTimeout(this.time); this.time = setTimeout((/** * @return {?} */ () => { this.nzPageIndex = 1; this.getIsChangePageSize = false; }), 0); return; } this.getShowDate(); } /** * @return {?} */ search() { /** @type {?} */ const fields = JSON.parse(JSON.stringify(this.fields)); this.keyword = this.keyword.trim(); /** @type {?} */ let list = fields.filter((/** * @param {?} field * @return {?} */ (field) => ((/** @type {?} */ ((/** @type {?} */ ((/** @type {?} */ (field)).templateOptions)).label))).includes(this.keyword))); this.nzPageIndex = 1; this.showData = []; for (let i = (this.nzPageIndex - 1) * this.nzPageSize; i < this.nzPageIndex * this.nzPageSize; i++) { if (!!list[i]) { this.showData.push(list[i]); } } // this.getShowDate(); } /** * @param {?} e * @return {?} */ nzPageSizeChange(e) { this.nzPageIndex = 1; this.getIsChangePageSize = true; this.getShowDate(); } /** * @param {?} value * @param {?} type * @param {?=} selectType * @return {?} */ transLate(value, type, selectType) { /** @type {?} */ let str; switch (type) { case "hide": str = this.HideType[value] || "显示"; break; case "required": str = this.RequireType[value] || "不必填"; break; case "edit": str = this.EditType[value] || "可编辑"; break; case "type": if (!!selectType && selectType === "multiple") { str = this.FieldBasicType["select-multiple"]; } else { str = this.FieldBasicType[value]; } break; case "tableType": str = this.TableType[value]; break; default: break; } return str; } /** * @param {?} value * @param {?} data * @return {?} */ clickAction(value, data) { // if (!this.canAddEvent(data)) { // return; // } switch (value) { case "edit": this.dyService.fieldOperational("edit", data); break; case "trigger": this.trigger(data); break; // case "Codemirror": // this.Codemirror(data); // break; default: break; } } // this.Codemirror(data); /** * @param {?} data * @return {?} */ codemirror(data) { // if (!this.canSetRule(data)) { // return; // } // this.calculateRuleJson =; console.log("dddd", data); /** @type {?} */ let nzTitle = `${(/** @type {?} */ (data)).tableName ? (/** @type {?} */ (data)).tableName + "-" : ""}${(/** @type {?} */ ((/** @type {?} */ (data)).templateOptions)).label}(${this.transLate((/** @type {?} */ (data)).type, "type")})-规则`; // console.log(data); // this.fields.forEach((el: any) => { // if (this.field.tableType === "single") { // if ( // (this.typeList as any)!.includes(el.type) && // el.key !== this.field.key // ) { // this.changeItem!.push(el); // } // } else { // if ( // (this.typeList as any)!.includes(el.type) && // el.key !== this.field.key && // (el.tableCode === this.field.tableCode || el.tableType === "single") // ) { // this.changeItem!.push(el); // } // } // if (el.key === this.field.key) { // this.selectItemType = // el.templateOptions!.selectType === "multiple" // ? "multiple" // : "default"; // } // }); /** @type {?} */ let fieldData = _.cloneDeep(this.params.fieldVariable); if (data.tableType === "multiple") { /** @type {?} */ let tableList = _.cloneDeep(fieldData.tableList); /** @type {?} */ let newTableList = []; ((/** @type {?} */ (tableList))).forEach((/** * @param {?} table * @return {?} */ (table) => { if (table.tableType === "single") { newTableList.push(table); } if (table.tableType === "multiple" && table.key === data.tableCode) { newTableList.push(table); } })); fieldData.tableList = newTableList; } // console.log(fieldData); this.configFormulaEvent.emit({ data, nzTitle, fieldData, }); // let ruleObj = ""; // if ((this.calculateRuleJson as Object).hasOwnProperty(data.key)) { // ruleObj = this.calculateRuleJson[data.key]["calculateValue"]; // if (!!ruleObj && (ruleObj as string).includes("&&_widget_")) { // ruleObj = (ruleObj as any).replaceAll("$", "."); // ruleObj = (ruleObj as string).replace(/&&_widget_/g, "$_widget_"); // } // } else { // this.calculateRuleJson[data.key] = { // calculateValue: null, // calculateText: null, // }; // } // this.kreDialogService.CreateModelDialogField( // { // nzTitle, // size: "large", // nzContent: ConfigCodemirrorComponent, // }, // { // type: "Daycalculation", // title: nzTitle, // fieldData: this.params.fieldVariable, // options: this.codeMirrorOptions, // ruleObj, // }, // (actType: any, instance: any, modal: any) => { // let ruleValue = _.cloneDeep(instance.ruleObj); // if (!!ruleValue) { // ruleValue = (ruleValue as string).replace(/$_widget_/g, "&&_widget_"); // ruleValue = (ruleValue as any).replaceAll(".", "$"); // } // this.calculateRuleJson[data.key] = { // calculateValue: ruleValue, // calculateText: instance.showText, // }; // console.log(this.calculateRuleJson); // modal.destroy(); // let newFormInfo: any = _.cloneDeep(this.business_form); // this.actionEvent.emit({ // newFormInfo, // triggerJson: this.triggerJson, // calculateRuleJson: this.calculateRuleJson, // }); // // } // } // ); } /** * @param {?} data * @return {?} */ showText(data) { /** @type {?} */ let calculateText = ""; if (((/** @type {?} */ (this.calculateRuleJson))).hasOwnProperty(data.key)) { calculateText = this.calculateRuleJson[data.key]["calculateText"]; } return calculateText; } /** * @param {?} data * @return {?} */ getTriggerJson(data) { /** @type {?} */ let triggerJson; // if (!!triggerJson) { if (data["table"] === "multiple") { if (!!this.triggerJson[(/** @type {?} */ (data)).Pkey] && !!this.triggerJson[(/** @type {?} */ (data)).Pkey][(/** @type {?} */ (data)).key]) { triggerJson = this.triggerJson[(/** @type {?} */ (data)).Pkey][(/** @type {?} */ (data)).key]; } else { triggerJson = null; } } else { triggerJson = this.triggerJson[(/** @type {?} */ (data)).key] || null; } // } return !_.isEmpty(triggerJson); } /** * @param {?} data * @return {?} */ isSetRule(data) { // console.log(this.calculateRuleJson); return (!_.isEmpty(this.calculateRuleJson) && !_.isEmpty(this.calculateRuleJson[(/** @type {?} */ (data)).key]) && !!this.calculateRuleJson[(/** @type {?} */ (data)).key]["calculateText"]); } /** * @param {?} data * @return {?} */ trigger(data) { // console.log(data , this.triggerJson); /** @type {?} */ let triggerJson; if (data["table"] === "multiple") { if (!!this.triggerJson[(/** @type {?} */ (data)).Pkey] && !!this.triggerJson[(/** @type {?} */ (data)).Pkey][(/** @type {?} */ (data)).key]) { triggerJson = this.triggerJson[(/** @type {?} */ (data)).Pkey][(/** @type {?} */ (data)).key]; } else { triggerJson = null; } } else { triggerJson = this.triggerJson[(/** @type {?} */ (data)).key] || null; } this.kreDialogService.CreateModelDialogField({ nzTitle: `${(/** @type {?} */ (data)).tableName ? (/** @type {?} */ (data)).tableName + "-" : ""}${(/** @type {?} */ ((/** @type {?} */ (data)).templateOptions)).label}(${this.transLate((/** @type {?} */ (data)).type, "type")})-触发事件`, size: "large", nzContent: EventComponent, }, { data, fields: this.fields, options: this.options, triggerJson, }, (/** * @param {?} type * @param {?} instance * @param {?} modal * @return {?} */ (type, instance, modal) => { instance.save(); if (!instance.validateForm.valid) { return; } /** @type {?} */ let eventList = _.cloneDeep((/** @type {?} */ ((/** @type {?} */ ((/** @type {?} */ (instance)).validateForm)).value)).eventList); /** @type {?} */ let newEventList = this.getUnique3(eventList); // console.log(instance.validateForm); if ((/** @type {?} */ (newEventList)).length < (/** @type {?} */ (eventList)).length) { this.message.warning("当前触发事件存在多条完全相同的配置,请检查!"); return; } if (data["table"] === "multiple") { if (!this.triggerJson[(/** @type {?} */ (data)).Pkey]) { this.triggerJson[(/** @type {?} */ (data)).Pkey] = {}; } this.triggerJson[(/** @type {?} */ (data)).Pkey][(/** @type {?} */ (data)).key] = (/** @type {?} */ ((/** @type {?} */ ((/** @type {?} */ (instance)).validateForm)).value)).eventList; } else { this.triggerJson[(/** @type {?} */ (data)).key] = (/** @type {?} */ ((/** @type {?} */ ((/** @type {?} */ (instance)).validateForm)).value)).eventList; } /** @type {?} */ let newFormInfo = _.cloneDeep(this.business_form); this.kreFormCommonService.initFormFieldProperty(newFormInfo.fields); this.actionEvent.emit({ newFormInfo, triggerJson: this.triggerJson, calculateRuleJson: this.calculateRuleJson, }); modal.destroy(); // } })); } /** * @param {?} arr * @return {?} */ getUnique3(arr) { /** @type {?} */ const map = {}; arr.forEach((/** * @param {?} item * @return {?} */ (item) => { /** @type {?} */ const obj = {}; // 1、把数组中的元素(对象)的键名抽成一个数组然后排序 // 2、生成一个按照键名排序好的对象 Object.keys(item) .sort() .map((/** * @param {?} key * @return {?} */ (key) => (obj[key] = item[key]))); // 3、把新生成的对象作为对象的键存起来 map[JSON.stringify(obj)] = item; })); // 4、再把新对象的键名抽成一个数组返回即为不重复的集合 return Object.keys(map).map((/** * @param {?} key * @return {?} */ (key) => JSON.parse(key))); } /** * @param {?} data * @param {?} j * @return {?} */ setRule(data, j) { if (this.currentShowExpand === j) { this.currentShowExpand = -1; } else { this.params.title = "data.value.itemName" + "规则"; this.params = Object.assign({}, this.params); this.currentShowExpand = j; } } /** * @param {?} data * @return {?} */ canAddEvent(data) { return ((/** @type {?} */ (["select", "text", "numbers", "textarea", "upload"]))).includes(data.type); } /** * @param {?} data * @return {?} */ canSetRule(data) { return ((/** @type {?} */ (["text", "numbers", "datetime"]))).includes(data.type); // && data.tableType === "single" // || data.type === "position" && data!.templateOptions!.selectType === "single"; } } TriggerComponent.decorators = [ { type: Component, args: [{ selector: "demo-trigger", template: "<div class=\"table-bar flex-h flex-align-center\">\n <nz-input-group\n class=\"search-box\"\n [nzSuffix]=\"suffixIconSearch\"\n nzSize=\"small\"\n style=\"width: 500px\"\n >\n <input\n type=\"text\"\n nz-input\n class=\"allsearch\"\n placeholder=\"\u8BF7\u8F93\u5165\u5B57\u6BB5\u540D\"\n [(ngModel)]=\"keyword\"\n (keyup.enter)=\"search()\"\n />\n </nz-input-group>\n <ng-template #suffixIconSearch>\n <i nzType=\"link\" (click)=\"search()\" class=\"icon-uniE61D cursor\"> </i>\n </ng-template>\n <nz-pagination\n [(nzPageIndex)]=\"nzPageIndex\"\n [nzTotal]=\"nzTotal\"\n [(nzPageSize)]=\"nzPageSize\"\n [nzPageSizeOptions]=\"nzPageSizeOptions\"\n nzShowSizeChanger\n nzShowQuickJumper\n nzSize=\"small\"\n (nzPageIndexChange)=\"nzPageIndexChange($event)\"\n (nzPageSizeChange)=\"nzPageSizeChange($event)\"\n ></nz-pagination>\n</div>\n<nz-table\n #basicTable\n [nzData]=\"showData\"\n [nzSize]=\"'small'\"\n [nzFrontPagination]=\"false\"\n [nzScroll]=\"tableScroll\"\n class=\"kre-design-field-table\"\n>\n <thead>\n <tr>\n <th nzWidth=\"50px\">\u5E8F\u53F7</th>\n <th nzWidth=\"150px\">\u8868\u540D</th>\n <th nzWidth=\"150px\">\u7C7B\u578B</th>\n <th nzWidth=\"150px\">\u5B57\u6BB5\u540D</th>\n <th nzWidth=\"150px\">\u6570\u636E\u7C7B\u578B</th>\n <th nzWidth=\"150px\">\u663E\u793A\u72B6\u6001</th>\n <th nzWidth=\"150px\">\u7F16\u8F91\u72B6\u6001</th>\n <th nzWidth=\"150px\">\u5FC5\u586B\u72B6\u6001</th>\n <th nzWidth=\"250px\">\u64CD\u4F5C</th>\n </tr>\n </thead>\n <tbody>\n <ng-container *ngFor=\"let data of basicTable.data; let j = index\">\n <tr>\n <td>{{ nzPageSize * (nzPageIndex - 1) + j + 1 }}</td>\n\n <td>{{ data?.tableName }}</td>\n <td>{{ transLate(data?.tableType, \"tableType\") }}</td>\n <td>{{ data?.templateOptions?.label }}</td>\n\n <td>\n {{ data?.fieldDataType }}\n </td>\n <td>{{ transLate(data?.show, \"hide\") }}</td>\n <td>{{ transLate(data?.editor, \"edit\") }}</td>\n\n <td>{{ transLate(data?.templateOptions?.required, \"required\") }}</td>\n\n <td>\n <div class=\"btn-box\">\n <button\n nzSize=\"small\"\n nz-button\n [nzType]=\"getTriggerJson(data) ? 'primary' : 'default'\"\n (click)=\"clickAction(list[1].value, data)\"\n [disabled]=\"!canAddEvent(data)\"\n >\n {{ list[1].label }}\n </button>\n\n <button\n nzSize=\"small\"\n nz-button\n [nzType]=\"isSetRule(data) ? 'primary' : 'default'\"\n (click)=\"codemirror(data)\"\n [disabled]=\"!canSetRule(data)\"\n >\n \u8BBE\u7F6E\u89C4\u5219\n </button>\n </div>\n\n <!-- <span\n [class.triggerJson]=\"isSetRule(data)\"\n class=\"set-rule-btn pr-1 cursor\"\n (click)=\"codemirror(data)\"\n *ngIf=\"canSetRule(data)\"\n >\n <ng-container *ngIf=\"currentShowExpand !== j\">\n \u8BBE\u7F6E\u89C4\u5219\n </ng-container>\n\n <ng-container *ngIf=\"currentShowExpand === j\"> \u6536\u8D77 </ng-container>\n </span> -->\n </td>\n </tr>\n <!-- <tr *ngIf=\"currentShowExpand === j\">\n <td colspan=\"9\">\n <div class=\"new-flex-1 mb-2\">\n <div\n class=\"rules-content rules-content-show\"\n [innerHTML]=\"showText(data)\"\n ></div>\n\n <div class=\"flex-h justify-content-end set-rule\">\n <button\n (click)=\"checkFormula(data)\"\n class=\"test-btn\"\n nz-button\n nzType=\"default\"\n type=\"button\"\n >\n \u6D4B\u8BD5\n </button>\n <button\n (click)=\"codemirror(data)\"\n type=\"button\"\n nz-button\n nzType=\"primary\"\n >\n \u8BBE\u7F6E\n </button>\n </div>\n </div>\n </td>\n </tr> -->\n </ng-container>\n </tbody>\n</nz-table>\n", providers: [KreDialogService, KreFormAntService], styles: [".menu{display:block;width:24px;height:16px;background:#71a9ff;border-radius:8px;text-align:center;line-height:16px}.menu .icon-uniE61A{color:#fff}"] }] } ]; /** @nocollapse */ TriggerComponent.ctorParameters = () => [ { type: KreFormAntService }, { type: KreDialogService }, { type: NzMessageService }, { type: KreFormCommonService } ]; TriggerComponent.propDecorators = { business_form: [{ type: Input }], business_tables: [{ type: Input }], options: [{ type: Input }], triggerJson: [{ type: Input }], calculateRuleJson: [{ type: Input }], random: [{ type: Input }], actionEvent: [{ type: Output }], checkFormulaEvent: [{ type: Output }], configFormulaEvent: [{ type: Output }] }; if (false) { /** @type {?} */ TriggerComponent.prototype.business_form; /** @type {?} */ TriggerComponent.prototype.business_tables; /** @type {?} */ TriggerComponent.prototype.options; /** @type {?} */ TriggerComponent.prototype.triggerJson; /** @type {?} */ TriggerComponent.prototype.calculateRuleJson; /** @type {?} */ TriggerComponent.prototype.random; /** @type {?} */ TriggerComponent.prototype.actionEvent; /** @type {?} */ TriggerComponent.prototype.checkFormulaEvent; /** @type {?} */ TriggerComponent.prototype.configFormulaEvent; /** @type {?} */ TriggerComponent.prototype.showData; /** @type {?} */ TriggerComponent.prototype.list; /** @type {?} */ TriggerComponent.prototype.tableScroll; /** @type {?} */ TriggerComponent.prototype.fields; /** @type {?} */ TriggerComponent.prototype.keyword; /** @type {?} */ TriggerComponent.prototype.nzTotal; /** @type {?} */ TriggerComponent.prototype.nzPageSizeOptions; /** @type {?} */ TriggerComponent.prototype.nzPageIndex; /** @type {?} */ TriggerComponent.prototype.nzPageSize; /** @type {?} */ TriggerComponent.prototype.getIsChangePageSize; /** @type {?} */ TriggerComponent.prototype.time; /** @type {?} */ TriggerComponent.prototype.EditType; /** @type {?} */ TriggerComponent.prototype.HideType; /** @type {?} */ TriggerComponent.prototype.RequireType; /** @type {?} */ TriggerComponent.prototype.TableType; /** @type {?} */ TriggerComponent.prototype.FieldBasicType; /** @type {?} */ TriggerComponent.prototype.currentShowExpand; /** @type {?} */ TriggerComponent.prototype.params; /** @type {?} */ TriggerComponent.prototype.formFields; /** @type {?} */ TriggerComponent.prototype.tableList; /** @type {?} */ TriggerComponent.prototype.ruleObj; /** @type {?} */ TriggerComponent.prototype.codeMirrorOptions; /** * @type {?} * @private */ TriggerComponent.prototype.dyService; /** * @type {?} * @private */ TriggerComponent.prototype.kreDialogService; /** * @type {?} * @private */ TriggerComponent.prototype.message; /** @type {?} */ TriggerComponent.prototype.kreFormCommonService; } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJpZ2dlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Aa3JlLWZvcm0vYW50LyIsInNvdXJjZXMiOlsibGliL2Rlc2lnbi90cmlnZ2VyL3RyaWdnZXIuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUlULEtBQUssRUFDTCxNQUFNLEVBQ04sWUFBWSxHQUdiLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxvQkFBb0IsRUFBc0IsTUFBTSxnQkFBZ0IsQ0FBQztBQUUxRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNoRSxPQUFPLEtBQUssQ0FBQyxNQUFNLFFBQVEsQ0FBQztBQUM1QixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUd6RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sMEJBQTBCLENBQUM7Ozs7QUFHMUQseUNBSUM7OztJQUhDLHlDQUFtQjs7SUFDbkIsb0NBQWM7O0lBQ2QsNENBQW9COztBQVN0QixNQUFNLE9BQU8sZ0JBQWdCOzs7Ozs7O0lBd0kzQixZQUNVLFNBQTRCLEVBQzVCLGdCQUFrQyxFQUNsQyxPQUF5QixFQUMxQixvQkFBMEM7UUFIekMsY0FBUyxHQUFULFNBQVMsQ0FBbUI7UUFDNUIscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQUNsQyxZQUFPLEdBQVAsT0FBTyxDQUFrQjtRQUMxQix5QkFBb0IsR0FBcEIsb0JBQW9CLENBQXNCO1FBekkxQyxvQkFBZSxHQUFRLEVBQUUsQ0FBQztRQUMxQixZQUFPLEdBQVUsRUFBRSxDQUFDO1FBRXBCLGdCQUFXLEdBQVEsRUFBRSxDQUFDO1FBQ3RCLHNCQUFpQixHQUFRLEVBQUUsQ0FBQztRQUU1QixXQUFNLEdBQVcsQ0FBQyxDQUFDO1FBQ2xCLGdCQUFXLEdBQXNC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