62 lines
248 KiB
JavaScript
62 lines
248 KiB
JavaScript
!function(f,g,i){var n,o,a;f.formbuilder={config:{},toolbox:{},language:{},property:{},contextmenu:{},shortcutKey:{},menu:{},menucontrol:{},debugger:!1,insideTool:["datasetindex"],log:function(e,t){if(this.debugger||t)return i.console.log(e)},PATTERN:{DESIGN:"design",APPLYING:"applying",VIEW:"view"},HORIZONTAL:"horizontal",VERTICAL:"vertical",ELEMTYPE:{CONTAINER:"container",ELEM:"elem"},DATATYPE:{ROWS:"rows",COLUMNS:"columns",CELLS:"cells",CONTROLS:"controls",TABLE:"table",COLUMN:"column",ROWSINDEX:"rowsIndex",COLUMNSINDEX:"columnsIndex",TABLEINDEX:"tableIndex"},DATASETUPDATETYPE:{RESET:"reset",REPLACE:"replace",INSERT:"insert",DELETE:"delete"},PAGING:{DISPLAY:"anchoring"},REGEX:{NUMBER:"^[0-9]*$",CHINESE:"^[\\u4e00-\\u9fa5]{0,}$",EMAIL:"^\\w+([-+.]\\w+)*@\\w+([-.]\\w+)*\\.\\w+([-.]\\w+)*$",INTERNETURL:"[a-zA-z]+://[^\\s]* 或 ^http://([\\w-]+\\.)+[\\w-]+(/[\\w-./?%&=]*)?$",PHONE:"^(13[0-9]|14[5|7]|15[0|1|2|3|5|6|7|8|9]|18[0|1|2|3|5|6|7|8|9])\\d{8}$",DATE:"^\\d{4}-\\d{1,2}-\\d{1,2}"},"FONT-FAMILY":[{text:"微软雅黑",value:"微软雅黑"},{text:"黑体",value:"黑体"},{text:"新宋体",value:"新宋体"},{text:"仿宋",value:"仿宋"},{text:"楷体",value:"楷体"},{text:"华文楷体",value:"华文楷体"},{text:"华文宋体",value:"华文宋体"},{text:"华文宋体",value:"华文宋体"},{text:"方正舒体",value:"方正舒体"},{text:"方正姚体",value:"方正姚体"},{text:"华文隶书",value:"华文隶书"},{text:"华文行楷",value:"华文行楷"},{text:"华文新魏",value:"华文新魏"},{text:"Arial",value:"Arial"},{text:"Lucida",value:"Lucida"},{text:"Grande",value:"Grande"},{text:"Arial Black",value:"Arial Black"},{text:"Arial Narrow",value:"Arial Narrow"},{text:"Verdana",value:"Verdana"},{text:"Georgia",value:"Georgia"},{text:"Times New Roman",value:"Times New Roman"},{text:"Trebuchet MS",value:"Trebuchet MS"},{text:"Tahoma",value:"Tahoma"},{text:"Courier",value:"Courier"},{text:"Lucida Sans Unicode",value:"Lucida Sans Unicode"},{text:"Trebuchet MS",value:"Trebuchet MS"},{text:"Symbol",value:"Symbol"}],"FONT-SIZE":[{text:12,value:12},{text:14,value:14},{text:16,value:16},{text:18,value:18},{text:20,value:20},{text:22,value:22},{text:24,value:24},{text:26,value:26},{text:28,value:28},{text:36,value:36},{text:48,value:48},{text:72,value:72}],"BORDER-TABLE-STYLE":[{name:"border-table-solid",text:"border-solid",image:"border-solid.png"},{name:"border-table-none",text:"border-none",image:"border-none.png"},{name:"border-table-solid-heavy",text:"border-solid-heavy",image:"border-solid-heavy.png"}],"BORDER-STYLE":[{name:"border-solid",text:"border-solid",image:"border-solid.png"},{name:"border-none",text:"border-none",image:"border-none.png"},{name:"border-solid-heavy",text:"border-solid-heavy",image:"border-solid-heavy.png"}],"BORDER-POSITION":[{name:"all",text:"border-all",image:"border-all.png"},{name:"left",text:"border-left",image:"border-left.png"},{name:"right",text:"border-right",image:"border-right.png"},{name:"top",text:"border-top",image:"border-top.png"},{name:"bottom",text:"border-bottom",image:"border-bottom.png"}],BORDERSTYLEITEMS:{"border-table-solid":"solid","border-table-none":"none","border-table-solid-heavy":"solid","border-solid":"solid","border-none":"none","border-solid-heavy":"solid"},BORDERWIDTHITEMS:{"border-table-solid":"1px","border-table-none":"1px","border-table-solid-heavy":"2px","border-solid":"1px","border-none":"1px","border-solid-heavy":"2px"},DESIGNBORDERSTYLEITEMS:{"border-table-solid":"solid","border-table-none":"dashed","border-table-solid-heavy":"solid","border-solid":"solid","border-none":"dashed","border-solid-heavy":"solid"},DESIGNBORDERWIDTHITEMS:{"border-table-solid":"1px","border-table-none":"1px","border-table-solid-heavy":"2px","border-solid":"1px","border-none":"1px","border-solid-heavy":"2px"},"OBLIQUELINE-STYLE":[{name:"obliqueline-none",text:"",image:"obliqueline-none.png"},{name:"obliqueline-left-one",text:"",image:"obliqueline-left-one.png"}],"PRINT-SIZE":[{name:"print-none",text:"none",image:"print-none.png"},{name:"A3",text:"a3",image:"print-a3.png"},{name:"A4",text:"a4",image:"print-a4.png"}],"PRINT-DIRECTION":[{name:"vertical",text:"print-direction-v",image:"print-direction-v.png"},{name:"horizontal",text:"print-direction-h",image:"print-direction-h.png"}],SYNMOVEPROPERTYS:{cell:[],control:["cascade-control","relation-position"]},getId:function(){function e(){return(65536*(1+Math.random())|0).toString(16).substring(1)}var t,i=(new Date).getTime()+""+a++,n=[];return n.push(i.slice(0,8)),n.push(i.slice(8,12)),n.push((i=i.slice(12,16),t=i.length,"0000".slice(1,t+1)+i)),n.push(e()),n.push(e()),n.push(e()+e()+e()),n.join("-")},getTimestamp:function(){return(new Date).getTime()},getZindex:(n=a=1,o={t:0},function(e){var t;return o.hasOwnProperty((e=e||"t")||"t")?o[e]:(t=e?n++:(e=e||"t",0),o[e]=t)}),getValue:function(e){return g.isObject(e)?e.value:e},getImage:function(e,t){e=-1===t.indexOf("/")?e+t:t;return e},getPosition:function(e){e=JSON.parse(e.attr("data-position"))||[null,null];return{x:e[0],y:e[1]}},setPosition:function(e,t,i){i&&i.attr("data-position",["[",e,",",t,"]"].join(""))},formatPositionToObject:function(e){return e&&"string"==typeof e?(e=e.split(":"),{x:Number(e[0]),y:Number(e[1])}):e},formatPositionToString:function(e){return e&&"string"!=typeof e?e.x+":"+e.y:e},formatMovePosition:function(e,t){e=this.formatPositionToObject(e);return e.x=e.x+t.x,e.y=e.y+t.y,e=this.formatPositionToString(e)},updateProperty:function(t,e,i,n,o,a){var r,l,s,c,d,u,p,h=this,m=!0;e&&(r=n[e],d=(l=o[e])[t+"Update"]||l.update,s=l["before"+g.upperFirst(t)+"Update"]||l.beforeUpdate,c=l["after"+g.upperFirst(t)+"Update"]||l.afterUpdate,p=l.afterChecking,"function"==typeof d&&(u={x:n.x,y:n.y},l.excludePattern&&-1!==l.excludePattern.indexOf(t)||("function"==typeof l.conver&&(r=l.conver.call(i,r,u,n),n[e]=r),"function"==typeof s&&s.call(i,r,u,n),d.call(i,r,u,n),"function"==typeof c&&c.call(i,r,u,n),"function"==typeof p&&(m=p.call(i,r,u,n)),!a&&l.after&&m&&(e=l.after,g.isArray(e)||(e=[e]),g.each(e,function(e){h.updateProperty(t,e,i,n,o)})))))},updateValue:function(e,t,i,n,o,a,r){var o=o[i],l=t[i],l=o.timestamp&&n?(n="function"==typeof o.timestampConver?o.timestampConver.call(e,n,{x:t.x,y:t.y},t):n)&&{value:n,timestamp:a,zIndex:r||this.getZindex(a)}:n;t[i]=l},updateProperties:function(e,t,i,n,o,a,r){for(var l,s,c=0,d=(n=n instanceof Array?n:[n]).length;c<d;c++){if(l=n[c],s=o instanceof Array&&(o[c],1)?o[c]:o,!(a?a[l]:null))return;"timestamp-refresh"!==r&&(void 0===s&&(s=i[l]),(i.hasOwnProperty(l)||a.hasOwnProperty(l))&&this.updateValue(t,i,l,s,a,r)),this.updateProperty(e,l,t,i,a)}},updatePropertiesBySelected:function(e,t,i,n,o,a){var r,l,s,c;i&&i.length&&(r=i.attr("data-type"),l=i.attr("data-property-field"),i=t.getPosition(i),s=t.getPropertyControl(r,i),c=t.getPropertyData(r,l,i),t=t.getPropertyItems(r,l,i),this.updateProperties(e,s,c,n,o,t,a))},updatePropertiesBySelecteds:function(t,i,n,o,e,a){var r=this;a=a||this.getTimestamp(),g.forEach(e,function(e){r.updatePropertiesBySelected(t,i,f(e),n,o,a)})},updatePropertiesByOptions:function(o,a,e,r,l){var s=this;void 0!==r&&g.forEach(e,function(e){var t,i=r[e],n=i;i&&i.hasOwnProperty("timestamp")&&(n=i.value,t=i.timestamp),s.updatePropertiesBySelecteds(o,a,e,n,l,t)})},refreshPropertiesBySelecteds:function(t,i,n,e){var o=this;this.getTimestamp();g.forEach(e,function(e){o.updatePropertiesBySelected(t,i,f(e),n,void 0,"timestamp-refresh")})},isTwoDimensionalArray:function(e){return g.isArray(e)&&g.isArray(e[0])},findObj:function(e,t,i){var n=null;return this.isTwoDimensionalArray(e)?g.isNumber(t)&&g.isNumber(i)?(--i,n=e[--t]?e[t][i]:null):g.isNumber(t)?n=e[--t]:g.isNumber(i)&&(n=[],--i,e[0].length<i?n=null:g.each(e,function(e){n.push(e[i])})):n=e[g.isNumber(t)&&-1!==t?t-1:i-1],n},findMergeCellElem(e,t,i,n){let o=e[this.DATATYPE.CELLS],a=t[this.DATATYPE.CELLS],r=o.length-1,l=(o[0]?.length||0)-1,s=n,c=i,d=null;if(!(r<i||l<n||i<0||n<0))for(;0<=c;){var u=o[c];if(s=n,u){for(;0<=s;){var p=u[s],{colspan:h=1,rowspan:m=1}=a[c][s],m=c+m-1,h=s+h-1;if(i<=m&&n<=h&&p){d=p;break}--s}if(d)break;--c}}return d},updateSignObj:function(e,t,i,n){var o;return this.isTwoDimensionalArray(e)?(--i,e[--t]||(e[t]=[]),o=e[t][i],e[t][i]=n):(o=e[i=-1===t?--i:--t],e[i]=n),n||o},pushSingleObj:function(e,t){var i=t.options||t,n=i.x,i=i.y;return this.updateSignObj(e,n,i,t.options||t)},pushMultiObj:function(t,e){var i=this;g.each(e,function(e){i.pushSingleObj(t,e)})},pullSingObj:function(e,t){var t=t.options||t,i=t.x,t=t.y;return this.updateSignObj(e,i,t,{})},updateObjAttribute:function(e,t,i,n){var e=this.findObj(e,t,i),o=e;if(e)return o=e.options||e,g.each(n,function(e,t){o[t]=e}),e;this.log("can't find obj{"+t+","+i+"} in updateobjattribute")},removeObj:function(e,t,i){var n=g.findIndex(e,function(e){return e.x===t&&e.y===i});return g(e).pullAt(n).head()},insertRowObjs:function(e,t,i,n,o,a){var r=this.DATATYPE,l=this,s=e[r.TABLE],c=e[r.ROWS],d=e[r.CELLS],u=e[r.CONTROLS],p=s[r.ROWS],p=g.rangeRight(t,p+1);this.moveRowObjs(e,t,i,p),g.each(g.range(t,t+i),function(t){var i=f.extend({},a.row,{x:t});l.updateSignObj(c,t,-1,i),g.each(g.range(1,s[r.COLUMNS]+1),function(e){i=f.extend({},a.cell,{x:t,y:e}),l.updateSignObj(d,t,e,i),l.updateSignObj(u,t,e,{x:t,y:e})})}),s[r.ROWS]+=i},removeRowObjs:function(e,t,i,n,o,a){var r=this.DATATYPE,l=e[r.TABLE],s=l[r.ROWS],s=g.range(t,s+1);this.moveRowObjs(e,t,-i,s),l[r.ROWS]-=i},moveRowObjs:function(e,i,o,t){var n=this.DATATYPE,a=this,r=e[n.ROWS],l=e[n.CELLS],s=e[n.CONTROLS],e=r.length,n=Math.abs(o);g.each(t,function(n){var e=a.findObj(r,n,-1);e.x=n+o,a.updateSignObj(r,n,-1,null),a.updateSignObj(r,n+o,-1,e),g.each(l[n-1],function(e,t){++t,e.x=n+o,e.x1&&e.x1>=i&&(e.x1=e.x1+o),a.updateSignObj(l,n+o,t,e),a.updateSignObj(l,n,t,null)}),g.each(s[n-1],function(e,t){var i;++t,(i=e.options||e).x=n+o,a.synMoveProperties(i,{x:o,y:0},"control"),a.updateSignObj(s,n+o,t,e),a.updateSignObj(s,n,t,{x:n,y:t})})}),o<0&&(r.splice(e-n,n),l.splice(e-n,n),s.splice(e-n,n))},insertColumnObjs:function(e,t,i,n,o,a){var r=this.DATATYPE,l=this,s=e[r.TABLE],c=e[r.COLUMNS],d=e[r.CELLS],u=e[r.CONTROLS],p=s[r.COLUMNS],h=g.range(1,s[r.ROWS]+1),p=g.rangeRight(t,p+1);this.moveColumnObjs(e,t,i,h,p),g.each(g.range(t,t+i),function(i){var e=f.extend({},a.column,{y:i});l.updateSignObj(c,-1,i,e),g.each(h,function(e){var t=f.extend({},a.cell,{x:e,y:i});l.updateSignObj(d,e,i,t),l.updateSignObj(u,e,i,{x:e,y:i})})}),s[r.COLUMNS]+=i},removeColumnObjs:function(e,t,i,n,o){var a=this.DATATYPE,r=e[a.TABLE],l=r[a.COLUMNS],s=g.range(1,r[a.ROWS]+1),l=g.range(t,l+1);this.moveColumnObjs(e,t,-i,s,l),r[a.COLUMNS]-=i},moveColumnObjs:function(e,a,r,t,i){var n=this.DATATYPE,l=this,s=e[n.COLUMNS],c=e[n.CELLS],d=e[n.CONTROLS],o=Math.abs(r),u=s.length;g.each(i,function(o){var e=l.findObj(s,-1,o);e.y=o+r,l.updateSignObj(s,-1,o,null),l.updateSignObj(s,-1,o+r,e),g.each(t,function(e){var t,i=o+r,n=l.findObj(c,e,o);n.y=i,n.y1&&n.y1>=a&&(n.y1=n.y1+r),l.updateSignObj(c,e,i,n),l.updateSignObj(c,e,o,null),(t=(n=l.findObj(d,e,o)).options||n).y=i,l.synMoveProperties(t,{x:0,y:r},"control"),l.updateSignObj(d,e,i,n),l.updateSignObj(d,e,o,{x:e,y:o})})}),r<0&&(s.splice(u-o,o),g.each(c,function(e){e.splice(u-o,o)}),g.each(d,function(e){e.splice(u-o,o)}))},makeTwoDimensionalArray:function(r,e,l,s){var c=[],d=this;return this.isTwoDimensionalArray(r)?(c=g.take(r,e),g.each(g.range(0,e),function(t){var i=g.take(c[t]||[],l);c[t]=i,g.each(g.range(0,l),function(e){i[e]=f.extend({},s,i[e],{x:t+1,y:e+1})})})):g.each(g.range(0,e),function(i){var n,o,a=[];c[i]=a,g.each(g.range(0,l),function(e){var t;n=i+1,o=e+1,t=d.removeObj(r,n,o),a[e]=f.extend({},s,t,{x:n,y:o})})}),c},makeOneDimensionalArray:function(o,a,r,l){var s=[],c=this;return g.each(g.range(0,-1===a?r:a),function(e){var t,i,n;-1===a?(t=-1,i=e+1):-1===r&&(t=e+1,i=-1),n=c.removeObj(o,t,i),s[e]=f.extend({},l,n,{x:t,y:i})}),s},getMax:function(e,t){return Math.max(e,t)},getMaxPoint:function(e){function t(e,t){return t<e?e:t}var i=-1,n=-1;return g.each(e,function(e){g.isArray(e)?g.each(e,function(e){i=t(i,e.x),n=t(n,e.y)}):(i=t(i,e.x),n=t(n,e.y))}),{x:i,y:n}},makeElementTwoDimensionalArray:function(e,i){var n={table:e,rows:[],columns:[],cells:[[]],controls:[],rowsIndex:[],columnsIndex:[],tableIndex:null},o=this;return this.addTableIndexElement(n,e.find(i.tableIndex)),e.find(i.rowIndex).each(function(e){o.addRowIndexElement(++e,n,f(this))}),e.find(i.columnIndex).each(function(e){o.addColumnIndexElement(++e,n,f(this))}),e.find(i.row).each(function(t){++t;var e=f(this);o.addRowElement(t,n,e),e.find(i.column).each(function(e){o.addCellElement(t,++e,n,f(this))})}),n},updateSignElement:function(e,t,i,n){var o;return this.isTwoDimensionalArray(e)?(--i,e[--t]||(e[t]=[]),o=e[t][i],e[t][i]=n):(i=-1===t?i:t,o=e[--i],e[i]=n),n||o},addCellElement:function(e,t,i,n){this.updateSignElement(i[this.DATATYPE.CELLS],e,t,n)},addRowElement:function(e,t,i){this.updateSignElement(t[this.DATATYPE.ROWS],e,-1,i)},addColumnElement:function(e,t,i){this.updateSignElement(t[this.DATATYPE.COLUMNSINDEX],-1,e,i)},addTableIndexElement:function(e,t){e[this.DATATYPE.TABLEINDEX]=t},addRowIndexElement:function(e,t,i){this.updateSignElement(t[this.DATATYPE.ROWSINDEX],e,-1,i)},addColumnIndexElement:function(e,t,i){this.updateSignElement(t[this.DATATYPE.COLUMNSINDEX],-1,e,i)},findElements:function(e,t,i,n){i=i[n];return this.findObj(i,e,t)},findCellElement:function(e,t,i){return this.findElements(e,t,i,this.DATATYPE.CELLS)},findRowCellElements:function(e,t){return this.findElements(e,null,t,this.DATATYPE.CELLS)},findColumnCellElements:function(e,t){return this.findElements(null,e,t,this.DATATYPE.CELLS)},findRowControlElements:function(e,t,i){return i=i||this.ELEMTYPE.CONTAINER,t=this.findObj(t[this.DATATYPE.CONTROLS],e,null),g.map(t,function(e){return e?e[i]:null})},findColumnControlElements:function(e,t){return this.findElements(null,e,t,this.DATATYPE.CONTROLS)},findControlElement:function(e,t,i,n){return n=n||this.ELEMTYPE.CONTAINER,this.findObj(i[this.DATATYPE.CONTROLS],e,t)[n]},findRowIndexElement:function(e,t){return this.findElements(e,-1,t,this.DATATYPE.ROWSINDEX)},findColumnIndexElement:function(e,t){return this.findElements(-1,e,t,this.DATATYPE.COLUMNSINDEX)},findRowElement:function(e,t){return this.findElements(e,null,t,this.DATATYPE.ROWS)},removeCellElement:function(e,t,i){i=this.updateSignElement(i[this.DATATYPE.CELLS],e,t,void 0);if(i&&0<i.length)return i.remove()},insertRowElements:function(n,o,e,t,i,a){var e=g.isArray(e)?e:[e],r=e.length,l=this,s=t,c=n[this.DATATYPE.ROWS].length,t=g.rangeRight(t,c+1);this.moveRowElements(n,r,t),g.each(e,function(e,t){var i=s+t;l.addRowIndexElement(i,n,e.find(o.rowIndex)),l.addRowElement(i,n,e),e.find(o.column).each(function(e){l.addCellElement(i,++e,n,f(this))})})},removeRowElements:function(e,t,i,n,o){var t=-t,a=e[this.DATATYPE.ROWS].length,i=g.range(i,a+1);this.moveRowElements(e,t,i)},moveRowElements:function(n,o,e){var a=this,t=n.rowsIndex,i=n.rows,r=t.length,l=Math.abs(o),s=n[this.DATATYPE.CELLS];g.each(e,function(i){var e=a.findRowElement(i,n);a.addRowElement(i,n,null),a.addRowElement(i+o,n,e),e=a.findRowIndexElement(i,n),a.addRowIndexElement(i,n,null),a.addRowIndexElement(i+o,n,e),e=a.findRowCellElements(i,n),g.each(e,function(e,t){a.addCellElement(i+o,t+=1,n,e),a.addCellElement(i,t,n,null)})}),o<0&&(t.splice(r-l,l),s.splice(r-l,l),i.splice(r-l,l))},insertColumnElements:function(n,e,t,o,i,a){var r=t,t=r[0].length-1,l=r.length,s=(n[this.DATATYPE.CELLS][0]||[]).length,c=this,d=g.range(1,1+t),t=g.rangeRight(o,s+1);this.moveColumnElements(n,l,d,t),g.each(g.range(o,o+l),function(t){var i=r[t-o];c.addColumnIndexElement(t,n,i[0]),g.each(d,function(e){c.addCellElement(e,t,n,i[e])})})},removeColumnElements:function(e,t,i,n,o){var t=-t,a=e[this.DATATYPE.ROWS].length,r=(e[this.DATATYPE.CELLS][0]||[]).length,a=g.range(1,a+1),i=g.range(i,r+1);this.moveColumnElements(e,t,a,i)},moveColumnElements:function(n,o,e,t){var a,r=this,i=n.columnsIndex,l=i.length,s=Math.abs(o);g.each(t,function(e){var t=r.findColumnIndexElement(e,n);r.addColumnIndexElement(e+o,n,t),r.addColumnIndexElement(e,n,void 0)}),o<0&&i.splice(l-s,s),g.each(e,function(i){a=r.findRowCellElements(i,n),g.each(t,function(e){var t=r.findCellElement(i,e,n);r.addCellElement(i,e+o,n,t),r.addCellElement(i,e,n,void 0)}),o<0&&a.splice(l-s,s)})},getSortMapByOrder:function(e){return g(e).chain().map(function(e,t){return e.key=t,e}).orderBy("order").value()},getDatasetTemplate:function(t,e){var o=this,i={},a=t.controls,r=[],a=g(a).flatten().compact().map(function(e){return f.extend(!0,{},e.options||e)}).value(),n=g(a).map(function(e){if(e["extension-direction"]&&!e["relation-position"])return e}).compact().value(),n=g(n).map(function(e,t){for(var i=e,n=[];i;)r.push(i.id),n.push(i),i=g(a).filter(function(e){var t,e=o.formatPositionToObject(e["relation-position"]);if(e&&(t=e.x,e=e.y,t==i.x&&e==i.y))return!0}).head();return n}).value();return e&&g.each(r,function(e){g.pullAllBy(t.controls,[{id:e}],"id")}),g.each(n,function(e){i[e[0].id]=e}),i},getDatasetCellTemplate:function(i,n,o){var e=i;return i={},g.each(e,function(e,t){i[t]=[],g.each(e,function(e){e={x:e.x,y:e.y},e=f.extend(!0,{},o,g.find(n.cells,e),e);i[t].push(e)})}),i},formatDatasetsPage:function(e,t,i){var n=e.datasets[t-1]||{};return g.each(i,function(e,t){n[t]||(n[t]={id:t,rows:1})}),e.datasets[t-1]=n},updateTableRows:function(a,e,t){var r=g.orderBy(t.rows,["x"]),l={};g.each(e,function(e,t){var i,n,o;e&&1<e.length&&((o=e[0][0])["extension-direction"]===f.formbuilder.VERTICAL&&(o=o["dataset-block"],i=a[o][0].x,(n=g.find(r,{x:i}))&&(l[t]={id:o,row:n,x:i,count:e.length})))}),g(l).chain().orderBy(["x"],["desc"]).each(function(t){var i,e=t.x,n=g.findIndex(r,{x:e}),e=r.length,o=t.count-1;-1===n?f.formbuilder.log("not find row obj",!0):(g.each(g.range(n+1,e),function(e){(i=r[e]).x=i.x+o}),g.each(g.rangeRight(1,t.count),function(e){e=f.extend(!0,{},t.row,{x:t.row.x+e});r.splice(n+1,0,e)}))}).value(),t.rows=r,t.table.rows<r.length&&(t.table.rows=r.length)},formatTable:function(e){var t=this.getMaxPoint(e.controls);e.table.rows=Math.max(e.table.rows,t.x),e.table.columns=Math.max(e.table.columns,t.y)},synMoveProperties:function(i,n,e){var o=this;g.each(o.SYNMOVEPROPERTYS[e],function(e){var t=i[e];t&&(i[e]=o.formatMovePosition(t,n))})},changePosition:function(e,t,i,n,o,a){var o=o.options||o,r=0,l=0;e===this.VERTICAL&&o.x>i.x||e===this.VERTICAL&&o.x===i.x&&o.y>=i.y&&o.y<=n.y?r=t:e===this.HORIZONTAL&&o.y>=i.y&&o.x>=i.x&&o.x<=n.x&&(l=t),o.x=o.x+r,o.y=o.y+l,a&&this.synMoveProperties(o,{x:r,y:l},a)},changeDatasetTemplatePosition:function(i,n,e){var o=this;g.each(e,function(e,t){t!==n.datasetId&&g.each(e,function(e){o.changePosition(i,n.count,n.p1,n.p2,e)})})},getDatasetMoveInfo:function(e,t,i){var n=0,o=e[0].length,a=e[0][0],o=e[0][o-1],r={x:a.x,y:a.y},o={x:o.x,y:o.y};return"insert"===i?n=e.length:"remove"===i?n=-e.length:1===t&&(n=e.length-1),{p1:r,p2:o,count:n,datasetId:a["dataset-block"]}},getDatasetInfoById:function(e,t){var t=t[e],i=t[0],n=i.x,o=i.y;return{id:e,type:i["extension-direction"],x:n,y:o,length:t.length}},getDatasetRows:function(r,l,s,c,d,e){var t,u,p=this,h=this.insideTool||[],m=[];return l?(d=d||1,l instanceof Array&&0===l.length&&(l=1),t=(u=g.isNumber(l))?l:l.length,e=e[r],g.each(g.range(0,t),function(o){m[o]=[];let a=0;g.each(e,function(e,t){var i=e.type,i=-1<h.indexOf(i),n=t+a;i&&--a,i=u||i?{}:l[o][n],n=f.extend(!0,{},e,{"dataset-block":r},i),0===o&&0===t&&1===d||(n.id=p.getId()),s===p.VERTICAL?n.x=c.x+o+(d-1):n.y=c.y+o+(d-1),m[o].push(n)})}),m):null},changeInfoByDataset:function(n,e,t,i,o,a){var r,l=i.controls,s=i.cells,c=this;0<(r=this.getDatasetMoveInfo(e,t=t||1)).count&&(g.each(s,function(e,t,i){c.changePosition(n,r.count,r.p1,r.p2,e,"cell")}),g.each(l,function(e){c.changePosition(n,r.count,r.p1,r.p2,e,"control")}),this.changeDatasetTemplatePosition(n,r,a)),g(e).each(function(e){g.each(e,function(e,t){var i={x:e.x,y:e.y};e["dataset-block"]&&(e=o[e["dataset-block"]],n!==c.VERTICAL||g.find(s,i)||s.push(f.extend(!0,{},e[t],i)))})}),g(e).flatten().each(function(e){var t=g.find(l,{x:e.x,y:e.y});t?f.extend(!0,t,e):l.push(e)})},updateDatasetById:function(e,t,i,n,o,a){var r;if(t&&(r=this.getDatasetInfoById(e,a),(e=this.getDatasetRows(e,t,r.type,{x:r.x,y:r.y},i,a))&&0!==e.length))return this.changeInfoByDataset(r.type,e,i,n,o,a),e},updateDatasets:function(e,t,i,n){var o=this,a={};return e?(g.each(e,function(e){i.hasOwnProperty(e.id)&&(a[e.id]=o.updateDatasetById(e.id,e.rows,1,t,n,i))}),this.formatTable(t),a):{}},initDatasets:function(e){var n=[],o=0;return g.each(e,function(i){var e=i.rows;g.isNumber(e)&&(e=[e]),g.each(e,function(e,t){o=Math.max(o,t),n[t]||(n[t]={}),n[t][i.id]={id:i.id,rows:e}})}),{datasets:n,count:o+1}},deleteEmptyProperty:function(e){for(var t in e)e[t]||delete e[t]},repairCellBorderStyle:function(e){var t,e=e["border-style"];!e||"object"!=typeof e.value||e.value instanceof Array||(e.value=e.value.value||"border-solid"),e&&"string"==typeof(t=e.value)&&(e.value=[t,t,t,t])},sortCellsByPosition:function(e){var t=e.cells,t=g(t).sortBy(["x","y"]).value();t=g(t).uniqWith(t,function(e,t){return e.x===t.x&&e.y===t.y}).value(),e.cells=t},fillEmptyCells:function(e){var n=e.cells,e=e.table,t=e.rows,o=e.columns,a=0;g.each(g.range(1,t+1),function(i){g.each(g.range(1,o+1),function(e){var t=n[a];t.x==i&&t.y==e||n.splice(a,0,{x:i,y:e,colspan:1,rowspan:1}),++a})})},export:function(e,t){var o,a,r,l,s,c,d,i,u;return e?(o=this,a=e=t?(d=t,i=(t=e).datasets.data||[],g.each(i,function(e){var t=e.rows,i=0;if(!(g.isNumber(t)||1<t.length)){var n=t[0];if(!(g.isNumber(n)||n.length<d))for(;n.length>d;)n=n.splice(d),t[++i]=n}}),t):e,r=this.getDatasetTemplate(e,!0),i=f.extend(!0,{},f.formbuilder.toolbox._table.propertyField.cell),l=this.getDatasetCellTemplate(r,e,i),t=e.datasets.data,c=[],u=this.initDatasets(t),e=g.range(1,u.count+1),g.each(e,function(e){o.formatDatasetsPage(u,e,r)}),g.each(e,function(e){var e=u.datasets[e-1],t=f.extend(!0,{},a),i=f.extend(!0,{},r),n=f.extend(!0,{},l);s=o.updateDatasets(e,t,i,n),o.updateTableRows(r,s,t),delete t.datasets,g.each(t.cells,function(e){f.formbuilder.deleteEmptyProperty(e),f.formbuilder.repairCellBorderStyle(e)}),o.sortCellsByPosition(t),o.fillEmptyCells(t),c.push(t)}),c):null},getGuid:function(){return f.formbuilder.getId()},createStyle:function(e,t,i,n){var o=[],a=e.find("#"+t);0===a.length&&(a=f(document.createElement("style")),e.append(a)),o=o.join(""),a[0].id=t,o=[i,"{",function(e){var t,i,n=[];if(!e)return"";for(i in e)e.hasOwnProperty(i)&&(t=e[i],n.push(i+":"+t));return n.join(";")}(n),"}"].join(""),a[0].type="text/css",a.html(o)}},f.formbuilder.util={},f.formbuilder.util.updatePropertyByElem=function(e){var t,e=e.closest(".formbuilder-workspace-control-container"),i=e.closest(".formbuilder").data("formbuilder");i&&(i=i.workspace,(e=f.formbuilder.getPosition(e))&&(t=e.x,e=e.y,i.findControlObj(t,e).updateProperties()))}}(jQuery,_,window),function(C,h,i,u){"use strict";var p=C.formbuilder;function n(){this.className,this.builder,this.toolbox,this.control,this.menu,this.data,this.$elements={},this.grid,this.elem,this.$wrap,this.datasetTemplate,this.datasetRows,this.page={datasets:[],current:1,last:1,count:1},this.cacheData={}}function o(){this.className={layout:"formbuilder-design-workspace",itemswrap:"formbuilder-design-workspace-grid",item:"formbuilder-design-workspace-item",itemContainer:"formbuilder-design-workspace-item-container",relateProperty:"formbuilder-design-workspace-relate-property",enableDrop:"formbuilder-design-workspace-enable-drop",controlContainer:"formbuilder-workspace-control-container"},this.recordNumber=20,this.cache={recovery:[],retroversion:[]}}function a(){n.call(this),this.className={layout:"formbuilder-workspace formbuilder-applying-workspace",itemswrap:"formbuilder-applying-workspace-grid",item:"formbuilder-applying-workspace-item",editableCell:"formbuilder-applying-editable-cell",controlContainer:"formbuilder-workspace-control-container",checkFailed:"error"},this._datasetTemplate,this._data,this.datasetCtrls={}}function t(){n.call(this),this.className={layout:"formbuilder-workspace formbuilder-view-workspace",itemswrap:"formbuilder-view-workspace-grid",item:"formbuilder-view-workspace-item",controlContainer:"formbuilder-workspace-control-container"}}function r(){this.className={layout:"formbuilder-property",itemswrap:"formbuilder-property-items-wrap",hidden:"formbuilder-property-hidden",title:"formbuilder-property-title",items:"formbuilder-property-items",item:"formbuilder-property-item",blockItem:"formbuilder-property-item-block",itemTitle:"formbuilder-property-item-label",itemControl:"formbuilder-property-item-control",field:"formbuilder-property-title-field"},this.template={wrap:function(e){return["<div class='",e.className,"'></div>"].join("")},field:function(e){return["<a class='",e.className,"'>",e.title,"</a>"].join("")},title:function(e){var{className:e,path:t,title:i,x:n,y:o,icon:a=""}=e;return`<div class="${e}" title="${t} ${i} [${n},${o}]">
|
|
${a?`<img src="${a}" />`:""}
|
|
<span>${t} ${i} [${n},${o}]</span>
|
|
</div>`}},this.builder=null,this.language=null,this.elementTypes=null,this.items=null,this.owner=null,this.$wrap=null,this.elem=null}function l(){this.className={layout:"formbuilder-toolbox",hidden:"formbuilder-toolbox-hidden",itemswrap:"formbuilder-toolbox-items-wrap",items:"formbuilder-toolbox-items",item:"formbuilder-toolbox-item",group:"formbuilder-toolbox-group",groupTitle:"formbuilder-toolbox-group-title",groupIcon:"formbuilder-toolbox-group-icon",groupText:"formbuilder-toolbox-group-text",itemContent:"formbuilder-toolbox-content",itemIcon:"formbuilder-toolbox-item-icon",itemTitle:"formbuilder-toolbox-item-title",field:"formbuilder-toolbox-title-field"},this.template={container:function(e){return["<div class='",e.className.wrap,"'>",e.items,"</div>","<a class='",e.className.field,"'>",e.title,"</a>"].join("")},group:function(e){return["<div class='",e.className.group,"' >"," <div class='",e.className.title,"'>"," <img class='",e.className.icon,"' src='",e.icon,"' ",e.expand,"/>"," <span class='",e.className.text,"'> ",e.text,"</span>"," </div>"," ",e.items,"</div>"].join("")},item:function(e){return["<div class='",e.className.content,"'>"," <div class='",e.className.item,"' data-type='",e.type,"' data-path='",e.path,"'>"," <img class='",e.className.icon,"' src='",e.icon,"'/>"," <span class='",e.className.title,"' title='",e.text,"'>",e.text,"</span>"," </div>","</div>"].join("")}},this.builder=null,this.items=null,this.language=null,this.order=null,this.showLabel=null,this.localLanguage=null,this.elem=null,this.expandImage="expand.svg",this.collapseImage="collapse.svg"}function s(){this.className={container:"formbuilder-contextmenu",items:"formbuilder-contextmenu-items",item:"formbuilder-contextmenu-item",text:"formbuilder-contextmenu-item-text",image:"formbuilder-contextmenu-item-image"},this.template={container:function(e){return["<div class='",e.className.container,"'><ul class='",e.className.items,"'></ul></div>"].join("")},item:function(e){return["<li class='",e.className.item,"' >"," <img class='",e.className.image,"' src='",e.image,"' />"," <a class='",e.className.text,"' >",e.text," </a>","</li>"].join("")}},this.elem,this.wrapElem,this.builder,this.design,this.container,this.grid,this.contextmenus=p.contextmenu}function e(){this.className={container:"formbuilder-paging",wrap:"formbuilder-paging-wrap",button:"formbuilder-paging-button","btn-first":"formbuilder-paging-button-first","btn-last":"formbuilder-paging-button-last","btn-prev":"formbuilder-paging-button-prev","btn-next":"formbuilder-paging-button-next","btn-add":"formbuilder-paging-button-add","btn-index":"formbuilder-paging-index","btn-index-container":"formbuilder-paging-index-container","btn-selected":"formbuilder-paging-button-selected"},this.IMAGES={DEFAULT:{ADD:"paging-btn-add.png",FIRST:"paging-btn-first.png",LAST:"paging-btn-last.png",PREV:"paging-btn-prev.png",NEXT:"paging-btn-next.png"}},this.template={container:function(e){var t=e.className,e=e.images;return["<div class='",t.container,"'>","<div class='",t.wrap,"'>"," <div class='",t.button," ",t["btn-add"],"' style='background-image: url(",e.ADD,")'>","</div>"," <div class='",t.button," ",t["btn-first"],"' style='background-image: url(",e.FIRST,")'>","</div>"," <div class='",t.button," ",t["btn-prev"],"' style='background-image: url(",e.PREV,")'>","</div>"," <div class='",t["btn-index-container"],"'>"," </div>"," <div class='",t.button," ",t["btn-next"],"' style='background-image: url(",e.NEXT,")'>","</div>"," <div class='",t.button," ",t["btn-last"],"' style='background-image: url(",e.LAST,")'>","</div>"," </div>","</div>"].join("")},index:function(e){return["<div class='",e.className.button," ",e.className["btn-index"]," ",e.index===e.current?e.className["btn-selected"]:"","' ","data-index='",e.index,"' ",">",e.index,"</div>"].join("")}},this.elem,this.$pageCount,this.builder,this.pagesize,this.current=1,this.count=1}function c(e){this.items=p.shortcutKey,this.order=e.options.shortcutKey.order,this.builder=e,this.design=e.workspace,this.grid=this.design.grid,this.keydownEvent,this.bindEvent()}function d(){this.className={container:"formbuilder-menu",content:"formbuilder-menu-content",items:"formbuilder-menu-items",item:"formbuilder-menu-item",split:"formbuilder-menu-split",arrow:"formbuilder-menu-arrow",arrowsdown:"formbuilder-menu-arrows-down",submenu:"formbuilder-menu-submenu",prev:"formbuilder-menu-btn-prev",next:"formbuilder-menu-btn-next",hidden:"formbuilder-menu-hidden"},this.image={arrowsdown:"arrows-down.png",arrowLeft:"arrow-left.svg",arrowRight:"arrow-right.svg"},this.menu=p.menu,this.menucontrol=p.menucontrol,this.order=[],this.items=[],this.builder,this.workspace,this.proerty,this.grid,this.$elem,this.$wrap,this.$container,this.$prev,this.$next}function m(e,t){this.className={builder:"formbuilder",design:"formbuilder-design",applying:"formbuilder-applying",view:"formbuilder-view",autoHeight:"formbuilder-height-auto",hasPaging:"formbuilder-has-paging",dragging:"formbuilder-item-dragging"},this.elem=e,this.toolbox,this.workspace,this.contextmenu,this.loading,this.paging,this.drake,this.options,this.autoResize=!0,this.init(t),this.create()}n.prototype.create=function(e,t){this.init(e,t),this.elem.addClass(this.className.layout),this.createGrid()},n.prototype.init=function(e,t){this.className,this.builder=t,this.toolbox=t.options.toolbox,this.control=t.options.control,this.events=t.options.events,this.elem=e,this.$wrap,this.grid,this.pattern=this.builder.options.pattern,this.data=C.extend(!0,{table:C.extend(!0,{},p.toolbox._table.propertyField.table),rows:[],columns:[],cells:[],controls:[]},t.options.data)},n.prototype.formatData=function(){this.transformRows(),this.transformColumns(),this.formatRows(),this.formatColumns(),this.formatCells(),this.formatControls(),this.grid.options=this.data},n.prototype.transformRows=function(){h.forEach(this.data.rows,function(e){var t=e.height;e.height=isNaN(t)?t:+t})},n.prototype.transformColumns=function(){h.forEach(this.data.columns,function(e){var t=e.height;e.height=isNaN(t)?t:+t})},n.prototype.formatTable=function(){p.formatTable(this.data)},n.prototype.formatRows=function(){this.data.rows=p.makeOneDimensionalArray(this.data.rows,this.data.table.rows,-1,this.grid.propertyField.row)},n.prototype.formatColumns=function(){this.data.columns=p.makeOneDimensionalArray(this.data.columns,-1,this.data.table.columns,this.grid.propertyField.column)},n.prototype.formatCells=function(){this.data.cells=p.makeTwoDimensionalArray(this.data.cells,this.data.table.rows,this.data.table.columns,this.grid.propertyField.cell)},n.prototype.formatControls=function(){this.data.controls=p.makeTwoDimensionalArray(this.data.controls,this.data.table.rows,this.data.table.columns,null)},n.prototype.initGrid=function(){var e=C("<div class="+this.className.itemswrap+"></div>");(this.$wrap=e).appendTo(this.elem),this.grid=C.extend(!0,{},this.toolbox._table,{container:this.elem,content:e,workspace:this,pattern:this.builder.options.pattern,events:{activeCellChange:this.activeCellChange,onScroll:this.onScroll}}),this.initTimestamp()},n.prototype.activeCellChange=function(e,t){},n.prototype.clearActiveCell=function(e,t){},n.prototype.setCheckedTip=function(e,t){},n.prototype.getSubRowByCell=function(e){},n.prototype.updateCellsData=function(e){},n.prototype.processControl=function(){},n.prototype.onScroll=function(e,t){},n.prototype.getEffectCell=function(e){},n.prototype.proxyControlValue=function(e){},n.prototype.processData=function(e){let i=this.builder.options,n=this.toolbox,t=e.controls||[],o=e.datasets?.data||[];t.forEach(e=>{var t=e.type;n[t]?.beforeGetData(e,i)}),o.forEach(e=>{e.rows.forEach(e=>{h.isNumber(e)||e.forEach(e=>{e.forEach(e=>{var t=e.type;n[t]?.beforeGetData(e,i)})})})})},n.prototype.cacheElements=function(){this.$elements=p.makeElementTwoDimensionalArray(this.elem,this.grid.filters)},n.prototype.createGrid=function(){this.initGrid(),this.renderGrid()},n.prototype.delay=function(i){function n(){var t=setTimeout(function(){var e=i.shift();"function"==typeof e&&e.call(o),clearTimeout(t),0<i.length&&n()},60)}var o=this;i&&0<i.length&&n()},n.prototype.renderGrid=function(){this.formatData(),this.grid.update(),this.cacheElements(),this.grid.bindEvent(),this.updatePropertyMapItems(),this.addNewItems(),this.hideLoading()},n.prototype.hideLoading=function(){this.builder.loading.addClass("formbuilder-loading-container-hide")},n.prototype.showLoading=function(){this.builder.loading.removeClass("formbuilder-loading-container-hide")},n.prototype.initDatasets=function(){var e=this.data?this.data.datasets.data:[],e=p.initDatasets(e);this.page.datasets=e.datasets,this.page.count=e.count,this.formatDatasetsPage(1)},n.prototype.formatDatasetsPage=function(e){var t=C.extend(!0,{},this._datasetTemplate);return p.formatDatasetsPage(this.page,e,t)},n.prototype.getDatasetsByPageIndex=function(e){e=this.page.datasets[e-1];return C.extend({},e,this.getHorizontalDatasets())},n.prototype.getHorizontalDatasets=function(){var t={},i=this;return h.each(this._datasetTemplate,function(e){(e=e[0])&&e["extension-direction"]===p.HORIZONTAL&&(t[e.id]=i.page.datasets[0][e.id])}),t},n.prototype.renderByPageIndex=function(e){this.saveCurrentPageData(),this.recoverTable(),this.page.last=this.page.current,this.page.current=e,this.loadPage(e)},n.prototype.updateDatasets=function(){var t=this,i={},e=this.getDatasetsByPageIndex(this.page.current);return e?(h.each(e,function(e){t.datasetTemplate.hasOwnProperty(e.id)&&(i[e.id]=t.updateDatasetById(e.id,e.rows,1,t.data,t._datasetCellTemplate,t.datasetTemplate))}),this.formatTable(),i):{}},n.prototype.updateTableRows=function(e,t){p.updateTableRows(e,t,this.data)},n.prototype.saveData=function(){},n.prototype.insertDatasetRows=function(e){var t=this,i=e.id,n=e.index||1,o=this.getDatasetInfoById(i,this.datasetTemplate),i=this.getInsertDatasetRows(e,o,n),e=i[0][0]["fill-dynamic-data"];"function"==typeof(e=e?u[e]:null)?e.call(t.builder.elem,i[0],n,function(e){t.renderInsertDatasetRows([e],o,n)}):this.renderInsertDatasetRows(i,o,n)},n.prototype.getInsertDatasetRows=function(e,t,i){var n=t.id,e=e.rows;if(this.datasetTemplate.hasOwnProperty(n))return this.saveData(),this.getDatasetRows(n,e,t.type,{x:t.x,y:t.y},i+1,this.datasetTemplate)},n.prototype.renderInsertDatasetRowsOld=function(e,t,i){var n,o,a=t.id,r={},l=e.length;e&&0!==e.length&&e[0][0]&&(n=this.getDatasetMoveInfo(e,i,"insert"),o=h(e).flatten().value(),this.changeDatasetTemplatePosition(t.type,n,this.datasetTemplate),n=this.getMoveControls(t,i),this.changeMoveControlsPosition(e,n,t),this.addNewDatasetRows(t,i,l,n),this.renderControls(n,o),r[a]=e,this.triggerDatasetEvent(r),this.formatDatasetRows())},n.prototype.renderInsertDatasetRows=function(e,t,i){var n,o,a=t.id,r={},l=e.length;e&&0!==e.length&&e[0][0]&&(n=this.getDatasetMoveInfo(e,i,"insert"),o=h(e).flatten().value(),this.changeDatasetTemplatePosition(t.type,n,this.datasetTemplate),n=this.getMoveControls(t,i,!1),this.changeMoveControlsPosition(e,n,t),this.addNewDatasetRows(t,i,l,n),this.renderControls(null,o),r[a]=e,this.triggerDatasetEvent(r),this.formatDatasetRows())},n.prototype.getDatasetRow=function(e,i,n){var t,e=this.datasetTemplate[e],o=this;return t=e?h.map(e,function(e){var t;return"vertical"===i?(t=n.x,e=e.y,(t=o.findControlObj(t,e)).options.value=t.getValue(),{$elem:t.elem,id:t.elem.attr("id")||null,options:C.extend(!0,{},t.options)}):null}):t},n.prototype.loadPageDatasets=function(e){var i,t,n,o=e.id,a=e.rows,r=a instanceof Array?a.length:a,l=e.index||1,s={};this.datasetTemplate.hasOwnProperty(o)&&(t=this.getDatasetInfoById(o,this.datasetTemplate),e=a instanceof Array?a:this.getDatasetRows(o,r,t.type,{x:t.x,y:t.y},1,this.datasetTemplate),t.type===p.HORIZONTAL&&a instanceof Array&&(i=this.datasetTemplate[o][0].x,h.each(e,function(e){h.each(e,function(e,t){e.x=i+t})})),e&&0!==e.length&&e[0][0]&&(a=this.getDatasetMoveInfo(e,l),n=h(e).flatten().value(),this.changeDatasetTemplatePosition(t.type,a,this.datasetTemplate),a=this.getMoveControls(t,l),this.changeMoveControlsPosition(r-1,a,t),this.addNewDatasetRows(t,l,r-1,a),this.renderControls(a,n),s[o]=e,this.triggerDatasetEvent(s),this.formatDatasetRows()))},n.prototype.removeDatasetRowsOld=function(e){var t,i=e.id,n=e.rows,o=e.index||1;this.datasetTemplate.hasOwnProperty(i)&&(this.saveData(),t=this.getDatasetInfoById(i,this.datasetTemplate),(e=this.getDatasetRows(i,n,t.type,{x:t.x,y:t.y},o+1,this.datasetTemplate))&&0!==e.length&&e[0][0]&&(e=this.getDatasetMoveInfo(e,o,"remove"),this.changeDatasetTemplatePosition(t.type,e,this.datasetTemplate),e=this.getMoveControls(t,o),this.changeMoveControlsPosition(n,e,t),this.removeSelectDatasetRows(t,o,e,i),this.renderControls(e,[]),this.formatDatasetRows()))},n.prototype.removeDatasetRows=function(e){var t,i=e.id,n=e.rows,o=e.index||1;this.datasetTemplate.hasOwnProperty(i)&&(this.saveData(),t=this.getDatasetInfoById(i,this.datasetTemplate),(e=this.getDatasetRows(i,n,t.type,{x:t.x,y:t.y},o+1,this.datasetTemplate))&&0!==e.length&&e[0][0]&&(e=this.getDatasetMoveInfo(e,o,"remove"),this.changeDatasetTemplatePosition(t.type,e,this.datasetTemplate),e=this.getMoveControls(t,o,!1),this.changeMoveControlsPosition(n,e,t),this.removeSelectDatasetRows(t,o,e,i),this.formatDatasetRows()))},n.prototype.getMoveControls=function(e,t,i=!0){var n=[],o=this.data.table.rows,a=this.data.table.columns,r=this;return e.type===p.VERTICAL?h.each(h.range(e.x+t,o+1),function(t){h.each(h.range(1,a+1),function(e){e=(i?r.removeControl(t,e):r.findControlObj(t,e)?.options)||{};e&&e.type&&n.push(e)})}):h.each(h.range(e.y+t,a+1),function(t){h.each(h.range(e.x,e.x+e.length),function(e){e=r.removeControl(e,t);e&&n.push(e)})}),n},n.prototype.changeMoveControlsPosition=function(e,t,o){var a=h.isNumber(e)?e:e.length,r=this;h.each(t,function(e){var t,i=o.type===p.VERTICAL?(t=a,0):(t=0,a),n={x:e.x+t,y:e.y+i};e.x=n.x,e.y=n.y,r.synMoveProperties(e,{x:t,y:i},"control")})},n.prototype.synMoveProperties=function(e,t,i){p.synMoveProperties(e,t,i)},n.prototype.renderControls=function(e,t){var i=this;e&&h.each(e,function(e){i.addNewItem(e,{x:e.x,y:e.y})}),t&&h.each(t,function(e){i.addNewItem(e,{x:e.x,y:e.y})})},n.prototype.addNewDatasetRows=function(e,t,i,n){var o=this,a=e.x+t;e.type===p.VERTICAL?(this.grid.insertRows(e.x+t,i,this.findRowObj(e.x)),h.each(h.range(a,a+i),function(t){h.each(o.findRowCellsObj(e.x),function(e){p.updatePropertiesByOptions(o.pattern,o.grid,h.keys(o.grid.propertyField.cell),e,[o.findCell(t,e.y)])})})):(t=(t=h.maxBy(n,"y"))?t.y:0,(a=this.data.table.columns)<t&&this.grid.insertColumns(a+1,1))},n.prototype.removeSelectDatasetRows=function(e,n,t,i){var o=this,a=this._data.table.columns,r=this.data.table.columns,l=e.type===p.VERTICAL;h.each(this.datasetTemplate[i],function(e){let t,i;i=l?(t=e.x+n-1,e.y):(t=e.x,e.y+n-1),o.removeControl(t,i)}),l?this.grid.removeRows(e.x+n-1,1):(i=h(this.data.controls).chain().flatten().filter(function(e){return!!e.type}).concat(t).value(),((e=h.maxBy(i,"y"))?e.y:0)<r&&a<r&&this.grid.removeColumns(r,1))},n.prototype.saveCurrentPageData=function(){var t,e=this.getCurrentPageData(),i=e.controls;h.each(this._data.controls,function(e){var t=e.id,t=h.find(i,{id:t});t&&(e.text=t.text,e.value=t.value)}),e=e.datasets,t=this.getDatasetsByPageIndex(this.page.current),h.each(e,function(e){t[e.id].rows=e.rows})},n.prototype.cleanControls=function(){var e=this.data.table,i=this;h.each(h.range(1,e.rows+1),function(t){h.each(h.range(1,e.columns+1),function(e){i.removeControl(t,e)})})},n.prototype.recoverTable=function(){var e=this.getDatasetsByPageIndex(this.page.current),i=this;h(e).chain().sortBy(function(e){return e.rows&&0<e.rows.length?e.rows[0][0].x:-1}).reverse().each(function(e){var t=e.rows.length||0;e.rows&&1<e.rows.length&&(e=e.rows[0][0])&&e["extension-direction"]===p.VERTICAL&&(e=e.x,i.grid.removeRows(e+1,t-1))}).value(),this.datasetTemplate=C.extend(!0,{},this._datasetTemplate)},n.prototype.loadPage=function(t){var e,i=this;this.cleanControls(),h(this._data.controls).chain().map(function(e){return C.extend(!0,{},e)}).each(function(e){1!==t&&!1===e[p.PAGING.DISPLAY]||i.addNewItem(e,{x:e.x,y:e.y})}).value(),e=this.getDatasetsByPageIndex(t),h.each(e,function(e,t){i.loadPageDatasets({id:t,rows:e.rows,index:1})})},n.prototype.getDatasetMoveInfo=function(e,t,i){return p.getDatasetMoveInfo(e,t,i)},n.prototype.getDatasetRows=function(e,t,i,n,o,a){return p.getDatasetRows(e,t,i,n,o,a)},n.prototype.formatDatasetRows=function(){},n.prototype.changeDatasetTemplatePosition=function(e,t,i){p.changeDatasetTemplatePosition(e,t,i)},n.prototype.changeInfoByDataset=function(e,t,i,n,o,a){p.changeInfoByDataset(e,t,i,n,o,a)},n.prototype.changePosition=function(e,t,i,n,o,a){p.changePosition(e,t,i,n,o,a)},n.prototype.getDatasetInfoById=function(e,t){return p.getDatasetInfoById(e,t)},n.prototype.updateDatasetById=function(e,t,i,n,o,a){return p.updateDatasetById(e,t,i,n,o,a)},n.prototype.getDatasetTemplate=function(e){return C.formbuilder.getDatasetTemplate(this.data,e)},n.prototype.getDatasetCellTemplate=function(){return p.getDatasetCellTemplate(this._datasetTemplate,this.data,this.grid.propertyField.cell)},n.prototype.triggerDatasetEvent=function(e){var n=this,i=n.events.updateDatasets;"function"==typeof i&&(h.each(e,function(e,t){h.each(e,function(i,e){h.each(i,function(e,t){e=n.grid.findControlObj(e.x,e.y),i[t]=e.options||e})})}),h.each(e,function(e,t){i.call(n.builder.elem,t,e)}))},n.prototype.addNewItems=function(){var i=this,e=this.grid.options.controls;h.each(e,function(e){h.each(e,function(e){var t;e&&(e=e.options||e).type&&(t={x:e.x,y:e.y},i.addNewItem(e,t))})})},n.prototype.addNewItem=function(e,t){var i,n;e.type&&(n=this.findCell(t.x,t.y))&&(i=C("<div></div>"),0<n.length&&(i.appendTo(n),this.addControl(i,e,t)))},n.prototype.addControl=function(e,t,i){var n,o=t||{},a=o.type||e.attr("data-type"),r=this.builder,l=r.options,s=l.pattern;null==t.readonly&&(t.readonly=this.toolbox[a]?.options?.readonly||l.readonly),l=(t=C.extend(!0,{},this.toolbox[a]||this.toolbox.textbox,{options:o,builder:r,$content:e})).options,a=C("<div></div>").addClass(this.className.controlContainer).addClass(this.className.relateProperty).attr("data-position",JSON.stringify([i.x,i.y])).attr("data-type",l.type).attr("data-contextmenu",t.contextmenu),e.attr("class","").empty().addClass(this.className.item).append(a),t.container=a,l.label&&(n=C.extend(!0,{},this.toolbox._title,{options:{label:l.label}})[s]()),a.append(n),(o=t[s](this))?a.append(o):o=t.container.children(),t.elem=o,this.addControlObj(i.x,i.y,t),this.updatePropertyItems(t,t.options,t.property,i)},n.prototype.getProperySortMap=function(){return p.getSortMapByOrder(this.grid.propertyMap)},n.prototype.initTimestamp=function(){var t,e=this.getProperySortMap(),i=this.data,n=[];h.each(e,function(e){t=[i[e.map]],t=h.flattenDeep(t),h.each(t,function(e){h.each(e,function(e,t){h.isObject(e)&&e.hasOwnProperty("timestamp")&&n.push(e)})})}),n=h.sortBy(n,["timestamp"]),h.each(n,function(e){e.zIndex=p.getZindex(e.timestamp)})},n.prototype.updatePropertyMapItems=function(){var i=this.grid,e=this.getProperySortMap(),n=i.property,o=i.options,a=this;h.forEach(e,function(e){var t=e.key,e=o[e.map],t=n[t];a.updatePropertyItem(i,e,t,!0)})},n.prototype.updatePropertyForArrayType=function(t,e,i){var n=this;h.each(e,function(e){n.updatePropertyItem(t,e,i)})},n.prototype.updatePropertyItems=function(t,i,n){var o=this.builder.options.pattern,a=this,e=this.sortProperties(n);h.forEach(e,function(e){a.updatePropertyInLoad(o,e,t,i,n)})},n.prototype.sortProperties=function(e){return h(e).chain().map(function(e,t){return{name:t,order:e.order||0}}).orderBy(function(e){return e.order||0}).map("name").value()},n.prototype.updatePropertyItem=function(e,t,i){t instanceof Array?this.updatePropertyForArrayType(e,t,i):this.updatePropertyItems(e,t,i)},n.prototype.updatePropertyInLoad=function(e,t,i,n,o){var a=o[t];a&&!1!==a.updateInLoad&&p.updateProperty(e,t,i,n,o,!0)},n.prototype.getData=function(){return h(this.data.controls).flatten().map(function(e){return e&&(e=e.options?C.extend(!0,{},e.options):C.extend(!0,{},e)).type?e:null}).compact().value()},n.prototype.getDataByCell=function(e){e=p.getPosition(C(e));return e?this.getDataByPosition(e.x,e.y):null},n.prototype.getDataByActiveCell=function(){var e=this.grid.cache.$activeCell;return e&&0<e.length?this.getDataByCell(e):null},n.prototype.getDataByPosition=function(e,t){e=this.grid.findControlObj(e,t);return e.options?C.extend(!0,{},e.options):C.extend(!0,{},e)},n.prototype.findCell=function(e,t){return p.findCellElement(e,t,this.$elements)},n.prototype.findRowCells=function(i,e){let n;if(n=p.findRowCellElements(i,this.$elements),h.isArray(n)&&!1!==e){var o,a=this.$elements,r=this.grid.options;for(let e=0,t=(n=h.cloneDeep(n)).length;e<t;e++)n[e]||(o=p.findMergeCellElem(a,r,i-1,e))&&(n[e]=o);n=h.compact(n)}return n},n.prototype.findColumnCells=function(i,e){if(n=p.findColumnCellElements(i,this.$elements),h.isArray(n)&&!1!==e){var n,o,a=this.$elements,r=this.grid.options;for(let e=0,t=(n=h.cloneDeep(n)).length;e<t;e++)n[e]||(o=p.findMergeCellElem(a,r,e,i-1))&&(n[e]=o);n=h.compact(n)}return n},n.prototype.findRowControls=function(e,t){e=p.findRowControlElements(e,this.data);return e=h.isArray(e)&&!1!==t?h.compact(e):e},n.prototype.findColumnControls=function(e,t){e=p.findColumnControlElements(e,this.data);return e=h.isArray(e)&&!1!==t?h.compact(e):e},n.prototype.findControl=function(e,t){return p.findControlElement(e,t,this.data)||null},n.prototype.findRowIndex=function(e){return p.findRowIndexElement(e,this.$elements)},n.prototype.findColumnIndex=function(e){return p.findColumnIndexElement(e,this.$elements)},n.prototype.findAllRowIndex=function(){return h.compact(this.$elements[p.DATATYPE.ROWSINDEX])},n.prototype.findAllColumnIndex=function(){return h.compact(this.$elements[p.DATATYPE.COLUMNSINDEX])},n.prototype.findRow=function(e){return p.findRowElement(e,this.$elements)},n.prototype.removeCell=function(e,t,i,n){var o={colspan:1,rowspan:1};h.isNumber(i)&&h.isNumber(n)&&(o.x1=i,o.y1=n),p.updateSignObj(this.data[p.DATATYPE.CONTROLS],e,t,{x:e,y:t}),p.removeCellElement(e,t,this.$elements),this.updateCellObjAttribute(e,t,o)},n.prototype.removeControl=function(e,t){var i,n=this.findControlObj(e,t),o=this.builder.options.pattern;if(n&&n.type)return i=this.findCell(e,t),"applying"==o&&n?.applyingRemove(),i&&i.find(">."+this.className.item).remove(),p.updateSignObj(this.data[p.DATATYPE.CONTROLS],e,t,{x:e,y:t}),n.options||n},n.prototype.insertRows=function(e,t,i,n,o){var a=C.extend(!0,{},this.grid.propertyField);o&&o.height&&(a.row.height=o.height),p.insertRowElements(this.$elements,this.grid.filters,e,t,i,n),p.insertRowObjs(this.data,t,e.length,i,n,a)},n.prototype.removeRows=function(e,t,i,n){p.removeRowElements(this.$elements,e,t,i,n),p.removeRowObjs(this.data,t,e,i,n)},n.prototype.insertColumns=function(e,t,i,n){p.insertColumnElements(this.$elements,this.grid.filters,e,t,i,n),p.insertColumnObjs(this.data,t,e.length,i,n,this.grid.propertyField)},n.prototype.removeColumns=function(e,t,i,n){p.removeColumnElements(this.$elements,e,t,i,n),p.removeColumnObjs(this.data,t,e,i,n)},n.prototype.addCell=function(e,t,i){var n=C.extend({},this.grid.propertyField.cell,{x:e,y:t});this.addCellObj(e,t,n),p.addCellElement(e,t,this.$elements,i)},n.prototype.updateCellObjAttribute=function(e,t,i){p.updateObjAttribute(this.data[p.DATATYPE.CELLS],e,t,i)},n.prototype.findRowObj=function(e){return p.findObj(this.data[p.DATATYPE.ROWS],e,-1)},n.prototype.findRowCellsObj=function(e){return p.findObj(this.data[p.DATATYPE.CELLS],e,null)},n.prototype.findColumnCellsObj=function(t){var i=[],e=p.DATATYPE,n=this;return h.each(h.range(1,this.data[e.TABLE][e.ROWS]+1),function(e){i.push(p.findObj(n.data[p.DATATYPE.CELLS],e,t))}),i},n.prototype.findCellObj=function(e,t){return p.findObj(this.data[p.DATATYPE.CELLS],e,t)},n.prototype.addCellObj=function(e,t,i){p.updateSignObj(this.data[p.DATATYPE.CELLS],e,t,i)},n.prototype.findControlObj=function(e,t){return p.findObj(this.data[p.DATATYPE.CONTROLS],e,t)},n.prototype.findControlById=function(t){let i=this.data[p.DATATYPE.CONTROLS],n;for(let e=0;e<i.length;e++){var o=i[e];for(let e=0;e<o.length;e++){var a=o[e];if(a?.options?.id==t){n=a;break}}if(n)break}return n},n.prototype.addControlObj=function(e,t,i){var n=i.options||i;n.id||(n.id=p.getId()),n.x=e,n.y=t,p.updateSignObj(this.data[p.DATATYPE.CONTROLS],e,t,i)},n.prototype.checkValue=function(){var i=!0;return h(this.data.controls).flatten().each(function(e){var t=e.checkValue;"function"!=typeof t||t.call(e)||(i=!1)}),i},n.prototype.verify=function(){return!this.builder.options.verification||!1!==this.checkValue()},n.prototype.exportData=function(){var e,t=this.verify();return this.saveCurrentPageData(),(e=C.extend(!0,{},this.data)).cells=h(e.cells).flatten().value(),e.controls=h(e.controls).flatten().map(function(e){return e.type?e.options||e:null}).compact().value(),e.verified=t,delete e.datasets,e},n.prototype.destroy=function(){this.$wrap=null,this.builder=null,this.grid=null,this.toolbox=null,this.control=null,this.shortcutKey=null,this.data=null,this.elem.remove(),this.elem=null},(o.prototype=new n).getData=function(){var e=this.data,t=C.extend(!0,[],h(e.cells).flatten().value());return h.each(t,function(e){C.formbuilder.deleteEmptyProperty(e)}),{table:C.extend(!0,{},e.table),rows:C.extend(!0,[],e.rows),columns:h.map(e.columns,function(e){return delete(e=C.extend(!0,{},e))._width,e}),cells:t,controls:C.extend(!0,[],h(e.controls).flatten().map(function(e){e=e?e.options||e:{};return e.type?e:null}).compact().value()),datasets:{template:this.getDatasetTemplate(),data:[]}}},o.prototype.destroy=function(){n.prototype.destroy.call(this),this.recordNumber=null,this.className=null,this.cache=null},((a.prototype=new n).constructor=a).prototype.init=function(e,t){n.prototype.init.call(this,e,t),this.language=this.builder.options.language,this.localLanguage=p.language[this.language].applying,this.events=this.builder.options.events},a.prototype.createGrid=function(){var e;this.setAutoFitMeta(),this.initGrid(),this.processControl(),this._datasetTemplate=this.datasetTemplate||this.getDatasetTemplate(!0),this._datasetCellTemplate=this.getDatasetCellTemplate(),this.datasetTemplate=C.extend(!0,{},this._datasetTemplate),this._data=C.extend(!0,{},this.data),this.initDatasetControls(),this.initDatasets(),e=this.updateDatasets(),this.updateTableRows(this._datasetTemplate,e),this.renderGrid(),this.triggerDatasetEvent(e),this.formatDatasetRows(),this.autoFitFullScreen()},a.prototype.processControl=function(){var{controls:e=[]}=this.data;e.forEach(e=>{var{x:t,y:i}=e;e._designX=t,e._designY=i})},a.prototype.addControl=function(e,t,i,n,o=!0){var a=t||{},r=a.type||e.attr("data-type"),l=this.builder,s=l.options,c=s.pattern,t=this.findControlObj(t.x,t.y),r=C.extend(!0,{},this.toolbox[r]||this.toolbox.textbox,{options:a,builder:l,workspace:this,$content:e}),a=r.options,l=r.keepPattern,s=(null!=a.readonly?a:s).readonly,n=s?"view":l?c:n?"applying":"view";r.pattern=n,l&&t.elem||(e.attr("class","").empty().addClass(this.className.item),t=C("<div></div>").addClass(this.className.controlContainer).addClass(this.className.relateProperty).attr("data-position",JSON.stringify([i.x,i.y])).attr("data-type",a.type).attr("data-contextmenu",r.contextmenu),r.container=t,"view"!=n&&!l||s||"applying"!=c||(l=C('<div class="'+this.className.editableCell+'"></div>'),e[0].classList.add("formbuilder-table-cell-editable"),r.tip=l),a.label&&(s=C.extend(!0,{},this.toolbox._title,{options:{label:a.label}})[n](),t.append(s)),o&&r.beforeInit(),(e=r[n]())?t.append(e):e=r.container.children(),r.elem=e,this.addControlObj(i.x,i.y,r),i.delayLoad?r.loaded=!1:(this.addControlElem(r),r.loaded=!0),"applying"==c&&this.proxyControlValue(r))},a.prototype.addControlElem=function(e){var{$content:t,container:i,options:n={},tip:o=""}=e,n={x:n.x,y:n.y},o=[o,i];t?.empty().append?.(o),this.updatePropertyItems(e,e.options,e.property,n)},a.prototype.proxyControlValue=function(e){let t=e.options,i=null,n=()=>{i&&clearTimeout(i),i=setTimeout(()=>{e.valueChange?.(),i=null},10)},o=e=>{let t;return null!==e&&"object"==typeof e?u.Proxy&&(t=new Proxy(e,{set(e,t,i){return e[t]=i,n(),!0}})):t=e,t},a=o(t.value);Object.defineProperty(t,"value",{enumerable:!0,configurable:!0,get(){return a},set(e){a=o(e),n()}})},a.prototype.activeCellChange=function(e,t){var o=this;function i(e,t){var i,n;e&&0!=e.length&&(e={x:(e=JSON.parse(e.attr("data-position")))[0],y:e[1]},i=(n=o.findControlObj(e.x,e.y)||{}).options,t||n.updateValue&&n.updateValue(),i&&o.addControl(n.container.parent(),i,e,t,!1))}e&&i(e),t&&i(t,!0),(this.$activeCell=t)||this.clearActiveCell()},a.prototype.clearActiveCell=function(){this.$activeCell=null,this.grid.clearActiveCell()},a.prototype.addNewItems=function(){var a=this,e=this.grid.options.controls,r=this.data.controls,l=this.cacheData.delayLoadControls=[],t=this.elem,s=this.data.rows,c=3*t.height()/2,d=0;h.each(e,function(e,i){let t=s[i]["height"],n,o=[];t-=0,isNaN(t)&&(t=32),d+=t,n=c<d,h.each(e,function(e){var t;e&&(e=e.options||e).type&&(t={x:e.x,y:e.y,delayLoad:n},a.addNewItem(e,t),n&&(t=e.y-1,o.push(r[i][t])))}),l.push(o)}),function n(){let e=u.requestIdleCallback||(e=>{setTimeout(e({timeRemaining(){return 1/0}}))});e(function(e){let t=e.timeRemaining();if(0<t||e.didTimeout){let i;for(let t=0;t<l.length;t++){let e=l[t];if(0<e.length){i=e,l[t]=[];break}}i&&(i.forEach(e=>{a.addControlElem(e)}),setTimeout(()=>{n()},500))}},{timeout:1e4})}()},a.prototype.onScroll=function(){this.onControlScroll(),this.onLoadScroll()},a.prototype.onControlScroll=function(){let e=this.cacheData,t=e.controlScrollTimer;var i;t||(i=(i=this.$activeCell)&&JSON.parse(i.attr("data-position")),e.controlScrollTimer=setTimeout(()=>{e.controlScrollTimer=null},500),i&&(i={x:i[0],y:i[1]},this.findControlObj(i.x,i.y)?.scroll?.()))},a.prototype.onLoadScroll=function(){let u=this,n=this.$wrap,p=this.cacheData,o=this.builder.options.pattern,e=p.loadScrollTimer;p.allLoaded||(e?clearTimeout(e):this.showLoading(),p.loadScrollTimer=setTimeout(()=>{p.loadScrollTimer=null;var e=n.height(),t=e/2,i=n.scrollTop(),{controls:i=[],allLoaded:e}=function(n,o){let e=u.grid.options,a=e.rows,r=p.delayLoadControls,t=a.length,l=0,s=[];for(let i=0;i<t;i++){let e=a[i],t=+e?.height;var c,d;if(l>n&&l<o&&0<r[i]?.length&&(c=r[i],d=!1===c[0].loaded,r[i]=[],d&&(s=s.concat(c))),isNaN(t)&&(t=32),(l+=t)>o)break}return{controls:s,allLoaded:function(){let t=!0;for(let e=0;e<r.length;e++)0<r[e]?.length&&(t=!1);return t}()}}(Math.max(i-t,0),i+e+t);h.each(i,function(e){u.addControlElem(e)}),e&&("view"==o&&u.grid.unbindScroll(),p.allLoaded=!0),u.hideLoading()},200))},a.prototype.checkValue=function(){var i=!0,n=this;return this.clearActiveCell(),h(this.data.controls).flatten().each(function(e){var t=e.checkValue;e.options&&!1!==e.options.readonly||"function"==typeof t&&(t.call(e)?n.setCheckedTip(e,!0):(i=!1,n.setCheckedTip(e,!1)))}),i},a.prototype.getSubRowByCell=function(e){var t=this._datasetTemplate,i=e["dataset-block"],n=e.type,o=t[i],a={isSubCell:!!i,row:[C.extend(!0,{},e)],originRowObj:{[n]:e},index:0},r=a.row,l=a.originRowObj,s=e.x,c=e.y;if(i){r.length=0;for(var d=o.length,u="horizontal"==o[0]["extension-direction"],p=0;p<d;p++){var h=o[p],m=u?h.x:s,h=u?c:h.y,m=(this.findControlObj(m,h)||{})["options"],h=m.type,f=C.extend(!0,{},m);h==n&&(a.index=p),r.push(f),l[h]=m}}return a},a.prototype.getEffectCell=function(h,e){var m=this,f=this._datasetTemplate,g=this._data.controls,b=h["dataset-block"],v=C.extend(!0,{},h),y={isSubCell:!!b,options:v,row:[v],controls:[],originRowObj:{[h.type]:h}},x=y.row,w=y.originRowObj;return e?.length&&e.forEach(({position:e="",...t})=>{let[i,n]=e.split(":"),o,a,r,l,s,c,d,u,p;i-=0,n-=0,s=(u=(o=b?f[b]:g).find?.(e=>e.x==i&&e.y==n))?.id,u?.type&&(l=(b?(e="horizontal"!=o[0]["extension-direction"],r=(e?h:u).x,e?u:h):(r=u.x,u)).y,r==h.x&&l==h.y||s==h.id?C.extend(v,t):(p=m.findControlObj(r,l),{options:c}=p,(b||c?.id==s||(p=m.findControlById(s),{options:c}=p,c?.type))&&(d=C.extend(!0,{},c,t),(a=c.type)==h.type&&(y.options=d),w[a]=c,x.push(d),y.controls.push(p))))}),y},a.prototype.updateCellsData=function(e){for(var t,i,n,o=0,a=e.length;o<a;o++)n=(t=e[o]).x,i=t.y,(n=this.findControlObj(n,i))&&t&&this.addControl(n.container.parent(),t,{x:t.x,y:t.y})},a.prototype.setCheckedTip=function(e,t){var i=e.options,n=this.localLanguage||{},i=i["check-tooltip"]||n.defaultCheckFailed||"",n=e.tip,e=this.className.editableCell+" "+(t?"":this.className.checkFailed);n&&(n.attr("title",t?"":i),n.attr("class",e))},a.prototype.initDatasetControls=function(){for(var e,t,i=this.data.controls,n=0,o=i.length;n<o;n++)"datactrls"===(e=i[n]).type&&e["relation-dataset"]&&(t=p.formatPositionToObject(e["relation-dataset"]),(t=this.getDatasetIdByPosition(t))&&(e.datasetId=t,this.datasetCtrls[t]=e))},a.prototype.getDatasetIdByPosition=function(e){var t,i,n=this.datasetTemplate,o=null;for(i in n)if(n.hasOwnProperty(i)&&(t=n[i][0]).x===e.x&&t.y===e.y){o=t.id;break}return o},a.prototype.setAutoFitMeta=function(){var e;this.builder.options.autoFitFullScreen&&(0===(e=C(document).find("head meta[name='viewport']")).length&&(e=C('<meta name="viewport" content="width=device-width, initial-scale=1.0"></meta>'),C(document).find("head").append(e)),this.$meta=e)},a.prototype.autoFitFullScreen=function(){var e,t,i,n;this.builder.options.autoFitFullScreen&&(e=this.$meta,t=u.screen.width,i=this.grid.getWidth(),n=Number((t/i).toFixed(2))-.02,t<i&&e.attr("content","width=device-width, initial-scale="+n))},a.prototype.getDataByPosition=function(e,t){var i,n,e=this.findControlObj(e,t);return e?(e.options?((i=C.extend(!0,{},e.options)).value=e.getValue()||null,n=i):e.type&&(n=i=C.extend(!0,{},e)),n):null},a.prototype.saveData=function(){var e=this.data[p.DATATYPE.CONTROLS];h(e).flatten().each(function(e){var t,i;e&&e.type&&(i=e.options||e,"function"==typeof e.getValue&&(t=e.getValue(),i.value!=t&&(i.value=e.getValue())))})},a.prototype.getCurrentPageData=function(){var e,o={controls:null,datasets:[]};return this.saveData(),e=n.prototype.getData.call(this),h(e).sortBy(["x","y"]).groupBy(function(e){return e["dataset-block"]||"_common"}).each(function(e,t){var i,n;"_common"===t?o.controls=e:(i=e[0],n=i["extension-direction"]===p.VERTICAL?"x":"y",e=h(e).groupBy(function(e){return e[n]}).map(function(e){return e}).value(),o.datasets.push({id:t,rows:e}))}),o},a.prototype.getData=function(){var e,t={},n=p.insideTool||[],i=this.verify();return this.saveCurrentPageData(),(e=C.extend(!0,{},this._data)).datasets.template=C.extend(!0,{},this._datasetTemplate),h(C.extend(!0,[],this.page.datasets)).each(function(e){h(e).each(function(e){t[e.id]?t[e.id].push(e.rows):t[e.id]=[e.rows]})}),e.datasets.data=h.map(t,function(e,t){e=C.extend(!0,[],e);return e.forEach(e=>{e instanceof Array!=0&&e.forEach(t=>{for(let e=t.length-1;0<=e;e--){var i=t[e]?.type;i&&-1<n.indexOf(i)&&t.splice(e,1)}})}),{id:t,rows:e}}),e.verified=i,e},a.prototype.formatDatasetRows=function(){var i=this,t=this.getCurrentPageData().datasets,n={vertical:[],horizontal:[]},o={vertical:{},horizontal:{}};h(this.datasetTemplate).each(function(e,t){(i.getDatasetInfoById(t,i.datasetTemplate).type===p.VERTICAL?n.vertical:n.horizontal).push(t)}),t&&0<t.length&&(h(n.vertical).each(function(i){var e=h.find(t,{id:i}),e=e?e.rows:[];h.each(e,function(e,t){e=e[0];o.vertical[e.x]={x:e.x,y:e.y,id:i,index:t+1,type:p.VERTICAL}})}),h(n.horizontal).each(function(i){var e=h.find(t,{id:i}),e=e?e.rows:[];h.each(e,function(e,t){e=e[0];o.horizontal[e.x]||(o.horizontal[e.x]={type:p.HORIZONTAL}),o.horizontal[e.x][e.y]={x:e.x,y:e.y,id:i,index:t+1,type:p.HORIZONTAL}})})),this.datasetRows=o},((t.prototype=new n).constructor=t).prototype.init=function(e,t){a.prototype.init.call(this,e,t)},t.prototype.createGrid=function(){var e;this.setAutoFitMeta(),this.initGrid(),this._datasetTemplate=this.datasetTemplate||this.getDatasetTemplate(!0),this._datasetCellTemplate=this.getDatasetCellTemplate(),this.datasetTemplate=C.extend(!0,{},this._datasetTemplate),this._data=C.extend(!0,{},this.data),this.initDatasets(),e=this.updateDatasets(),this.updateTableRows(this._datasetTemplate,e),this.renderGrid(),this.triggerDatasetEvent(e),this.formatDatasetRows(),this.autoMergerCellsForDatasets(e),this.autoFitFullScreen()},t.prototype.autoMergerCellsForDatasets=function(e){var o=this.grid;h.forEach(e,function(e,t){var i=[];e&&e[0]&&e[0][0]&&"vertical"===e[0][0]["extension-direction"]&&(h.forEach(e,function(n,e){if(0===e&&(h.forEach(n,function(e,t){e["auto-merger-cell"]&&i.push({index:t,items:[{x:e.x,y:e.y,value:e.value,rowspan:1}]})}),0===i.length))return!1;0!==e&&h.forEach(i,function(e){var t=e.index,e=e.items,i=e[e.length-1],t=n[t];t&&(t.value===i.value?++i.rowspan:e.push({x:t.x,y:t.y,value:t.value,rowspan:1}))})}),h.forEach(i,function(e){h.forEach(e.items,function(e){var t=[],i=e.x,n=e.y,e=e.rowspan;h.forEach(h.range(0,e),function(e){t.push(o.findCell(i+e,n))}),t&&o.mergeCells(t)})}))})},t.prototype.setAutoFitMeta=function(){a.prototype.setAutoFitMeta.call(this)},t.prototype.autoFitFullScreen=function(){a.prototype.autoFitFullScreen.call(this)},t.prototype.getCurrentPageData=function(){return a.prototype.getCurrentPageData.call(this)},t.prototype.getDataByPosition=function(e,t){return a.prototype.getDataByPosition.call(this,e,t)},t.prototype.getData=function(){return C.extend(!0,{},this._data)},t.prototype.addNewItems=a.prototype.addNewItems,t.prototype.addControl=a.prototype.addControl,t.prototype.addControlElem=a.prototype.addControlElem,t.prototype.onScroll=a.prototype.onLoadScroll,r.prototype.create=function(e,t){this.builder=t,this.language=t.options.language,this.localLanguage=p.language[this.language].property,this.elementTypes=t.options.property,this.elem=e,t=C(this.template.wrap({className:this.className.itemswrap})),e=C(this.template.field({className:this.className.field,title:this.localLanguage.title})),this.elem.append(t).append(e).addClass(this.className.layout),this.$wrap=t},r.prototype.addTitle=function(){var e=this.owner.element,t=this.owner.position,i=e.options.path||[],n=this.builder.getImage(e.icon),i=this.template.title({className:this.className.title,path:i.join(""),title:e.getLocalText(e.title),icon:n,x:t.x,y:t.y});this.$wrap.append(i)},r.prototype.addItems=function(){var e,t,i=this.items,n=C("<div class='"+this.className.items+"' >");for(t in i)!(e=i[t])||e.hidden||n.append(this.addItem(t,e));this.$wrap.append(n)},r.prototype.addItem=function(e,t){this.grid;var i,n,o=this.createElement(this.elementTypes.label,e,t),e=this.createElement(this.elementTypes[t.type]||this.elementTypes.textbox,e,t),t=this.className.item;return"block"===e.display&&(t+=" "+this.className.blockItem),t=C("<div class='"+t+"' />"),i=C("<div class='"+this.className.itemTitle+"' />"),n=C("<div class='"+this.className.itemControl+"' />"),i.append(o.create()),e.beforeInit(),e.elem=e.create(),e.bindEvent&&e.bindEvent(),this.bindElementUpdateEvent(e),n.append(e.elem),t.append(i).append(n),t},r.prototype.createElement=function(e,t,i){e=C.extend(!0,{},e,{builder:this.builder});return e.options.value=this.owner.data[t],e.options.source=i.source,e.options.name=t,e.options.text=i.text,e.options.prop=i,e.options["extend-params"]=i["extend-params"],e},r.prototype.bindElementUpdateEvent=function(e){var t,i=e.elem,n=e.updateEvent&&e.updateEvent(),o=this,a=this.owner,r=this.items;if(n)for(var l=0,s=n.length;l<s;l++)t=n[l],i.on(t.name,t.filter,function(){o.updateElement(a.element,a.position,a.data,e,r)})},r.prototype.updateElement=function(e,t,i,n,o){var a=n.options.name,r=o[a].checking,l=this.builder.options.pattern,s=n.getValue();r&&"function"==typeof r&&!r.call(e,s,t)&&"function"==typeof n.setValue?n.setValue(i[a]):(p.updateValue(e,i,a,s,o,p.getTimestamp()),p.updateProperty(l,a,e,i,o))},r.prototype.clearItems=function(){this.elem.find("."+this.className.itemswrap).empty(),this.owner=null,this.items=null},r.prototype.show=function(e,t,i,n){this.clearItems(),this.owner={element:n,data:t,position:i},this.items=e,this.addTitle(),this.addItems()},r.prototype.destroy=function(){this.elem.remove(),this.elem=null,this.$wrap=null,this.elementTypes=null,this.woner=null,this.items=null,this.className=null},l.prototype.create=function(e,t){this.builder=t,this.items=t.options.toolbox,this.language=t.options.language,this.control=t.options.control,this.order=this.control.order,this.showLabel=this.control.showLabel,this.expandImage=this.control.expandImage,this.collapseImage=this.control.collapseImage,this.localLanguage=p.language[this.language].toolbox,this.elem=e,t=this.template.container({className:{wrap:this.className.itemswrap,field:this.className.field},title:this.localLanguage.title,items:this.createItems(this.order,0,[])}),this.elem.addClass(this.className.layout).append(t),this.bindExpandEvent()},l.prototype.createItems=function(e,t,i,n){var o,a=[];a.push("<div class='"+this.className.items+"' "+(n?"style='display:none;'":"")+" >");for(var r=0,l=e.length;r<l;r++)o=e[r],a.push(this.createItem(o,t,i.slice()));return a.push("</div>"),a.join("")},l.prototype.createItem=function(e,t,i){var n,o,a=i.slice();if("string"==typeof e){if(!(n=this.items[e]))return p.log("toolbox not find "+e,!0),"";n=this.template.item({className:{content:this.className.itemContent,item:this.className.item,icon:this.className.itemIcon,title:this.className.itemTitle},type:n.type,path:a.join(" "),icon:this.builder.getImage(n.icon),text:n.getLocalText()})}else"object"==typeof e&&(i.push(e.text),e.path=i,a=this.builder.getImage(e.expand?this.expandImage:this.collapseImage),o=e.expand?"":" data-collapse='true' ",n=this.template.group({className:{group:this.className.group,title:this.className.groupTitle,icon:this.className.groupIcon,text:this.className.groupText},expand:o,icon:a,text:e.text,items:this.createItems(e.children,++t,i,!e.expand)}));return n},l.prototype.getItem=function(e){return this.items[e]||{}},l.prototype.bindExpandEvent=function(){var n=this;this.elem.find("."+this.className.groupIcon).click(function(){var e=C(this),t=!e.attr("data-collapse"),i=e.parent().next();t?(e.attr("src",n.builder.getImage(n.collapseImage)),e.attr("data-collapse",!0),i.hide()):(e.attr("src",n.builder.getImage(n.expandImage)),e.removeAttr("data-collapse"),i.show())})},l.prototype.destroy=function(){this.className=null,this.builder=null,this.items=null,this.language=null,this.order=null,this.showLabel=null,this.localLanguage=null,this.elem.remove(),this.elem=null},s.prototype.create=function(e){var t=this.className;this.builder=e,this.design=e.workspace,this.container=this.design.elem,this.grid=this.design.grid,e=this.template.container({className:{container:t.container,items:t.items}}),this.elem=C(e),this.wrapElem=this.elem.find(">."+t.items),this.elem.appendTo("body"),this.bindEvent()},s.prototype.createItems=function(e){for(var t,i,n=this.grid,o=this.className,a=0,r=this.builder.options.contextmenu.order,l=this.contextmenus,s=0,c=r.length;s<c;s++)(t=l[r[s]])&&t.checking(e,n)&&(++a,i=this.template.item({className:{item:o.item,image:o.image,text:o.text},image:this.builder.getImage(t.image),text:t.getLocalText(t.text)}),i=C(i),this.wrapElem.append(i),this.bindItemEvent(t.fn,i,e,n));return!!a},s.prototype.bindItemEvent=function(e,t,i,n){var o=this;t.on("click",function(){e(i,n),o.hide()})},s.prototype.bindEvent=function(){var o=this,a=C.extend({},this.design.className,o.grid.className),e=[".",a.cell,",.",a.index];this.container.on("contextmenu",e,function(e){var t=C(e.target).closest("td."+a.relateProperty),i=t.attr("data-property-field"),n=C(document);return 0!=t.length&&"table"!=i&&(o.hide(),o.grid.setSelectedCell(t),o.createItems(t)&&(i={top:e.clientY+n.scrollTop()-5,left:e.clientX+n.scrollLeft()-10},o.show(i))),!1}),this.elem.on("mouseleave",function(){o.hide()}),this.elem.on("contextmenu",function(){return!1})},s.prototype.show=function(e){var t=this.elem,i=t.height(),n=this.builder.elem.height(),{top:e,left:o}=e;t.css({left:o,top:n<i+e?e-i:e}),this.elem.show()},s.prototype.hide=function(){this.elem.hide(),this.wrapElem.empty()},s.prototype.destroy=function(){this.className=null,this.builder=null,this.design=null,this.container=null,this.grid=null,this.wrapElem=null,this.contextmenus=null,this.elem.remove(),this.elem=null},e.prototype.create=function(e,t){var i=this,n={};this.builder=t,this.workspace=t.workspace,this.container=e,this.count=this.workspace.page.count||1,h.each(this.IMAGES.DEFAULT,function(e,t){n[t]=i.builder.getImage(e)}),t=this.template.container({className:this.className,images:n}),this.elem=C(t),this.$pageCount=this.elem.find("."+this.className["btn-index-container"]),this.renderPageCount(),this.elem.appendTo(e),this.bindEvent()},e.prototype.renderPageCount=function(){var t=this,e=h.map(h.range(1,this.count+1),function(e){return t.template.index({className:t.className,index:e,current:t.current})});this.$pageCount.empty().append(e.join(""))},e.prototype.bindEvent=function(){var n=this;this.elem.on("click","."+this.className.button,function(e){var t,i=C(this);i.hasClass(n.className["btn-add"])?n.addNewPaging():i.hasClass(n.className["btn-first"])?n.goPaging(1):i.hasClass(n.className["btn-last"])?n.goPaging(n.count):i.hasClass(n.className["btn-prev"])?(t=n.current-1,n.goPaging(t=t<1?1:t)):i.hasClass(n.className["btn-next"])?(t=(t=n.current+1)>=n.count?n.count:t,n.goPaging(t)):i.hasClass(n.className["btn-index"])&&(t=i.attr("data-index"),t=Number(t),isNaN(t)||n.goPaging(t))})},e.prototype.addNewPaging=function(){++this.count,this.renderPageCount(),this.goPaging(this.count)},e.prototype.goPaging=function(e){var t;this.builder.workspace.verify&&!1===this.builder.workspace.verify()||(t=this.elem,e!==this.current&&(this.current=e,t.find("."+this.className["btn-index"]).removeClass(this.className["btn-selected"]),t.find("[data-index='"+e+"']").addClass(this.className["btn-selected"]),this.workspace.renderByPageIndex(e)))},c.prototype.bindEvent=function(){var o,a=this.items||[],r=this.order,l=C.extend({},this.design.className,this.grid.className),s=this.grid,e=s.container,c=this.builder.options.pattern;e.on("keyup",this.keydownEvent=function(e){let t,i,n;for(t=0,i=r.length;t<i;t++)(o=a[r[t]])&&c===o.pattern&&e.shiftKey===o.shiftKey&&e.altKey===o.altKey&&e.ctrlKey===o.ctrlKey&&e.keyCode===o.keyCode&&(0<(n=s.getSelected()).length&&"control"===o.targetType&&(n=n.find("."+l.relateProperty)),o.checking.call(o,n,s)&&o.fn.call(o,n,s))})},c.prototype.destroy=function(){C(document).unbind("keydown",this.keydownEvent)},d.prototype.create=function(e,t){var i=t.options.menu,n=this.className,{arrowLeft:o,arrowRight:a}=this.image;this.builder=t,this.workspace=t.workspace,this.proerty=this.builder.proerty,this.grid=this.workspace.grid,this.order=i.order,this.controls=i.controls,this.$container=e,this.$wrap=C(`
|
|
<div class="${n.container}">
|
|
<div class="${n.arrow} ${n.prev} ${n.hidden}">
|
|
<img src="${this.builder.getImage(o)}" />
|
|
</div>
|
|
<div class="${n.content}">
|
|
<div class="${n.items}"></div>
|
|
</div>
|
|
<div class="${n.arrow} ${n.next} ${n.hidden}">
|
|
<img src="${this.builder.getImage(a)}" />
|
|
</div>
|
|
</div>
|
|
`),this.$content=this.$wrap.find("."+n.content),this.$elem=this.$wrap.find("."+n.items),this.$container.append(this.$wrap),this.createItems(this.order,"top",this.$elem),this.updateArrowVisible(),this.bindBaseEvents()},d.prototype.createItems=function(e,t,i,n){let o=this.menu,a=this.menucontrol,r=this.controls,l,s;for(var c,d,u=0,p=e.length;u<p;u++)(s=e[u])instanceof Array?(this.createItems(s,t,i),this.createSplitItem(t,u,p)):(c="string"==typeof s?s:s.name,d=r?.[c],l=a[c],(l=d?C.extend(!0,{},l,d):l)&&o[l.type]&&this.createItem(l,s,t,i,n))},d.prototype.createSplitItem=function(e,t,i){"top"===e&&t!==i-1&&this.$elem.append(["<div class='",this.className.split,"' ><div></div></div>"].join(""))},d.prototype.createItem=function(e,t,i,n,o){var a=this.menu,r=e.options,l=e.type,a=C.extend(!0,{},a[l],e,{options:r,builder:this.builder,config:e,container:n,level:i,order:t});return a.parent=o||null,a.elem=a.create(),a.elem.addClass(this.className.item),a.bindEvent&&a.bindEvent(),this.bindElementUpdateEvent(a),n.append(a.elem),this.createSubmenu(e,t,a),this.items.push(a),a},d.prototype.createSubmenu=function(e,i,n){var o,a,t=n.elem,r=this.className,l=t.children(),s=this.builder.elem,e=e["options"],{}=e,c=this;i.children&&0<i.children.length&&(l.attr("href","javascript:void(0)"),(a=C(`<div class="${r.submenu}" ><div></div></div>`)).mousedown(function(e){"INPUT"===e.target.nodeName.toUpperCase()?l.attr("data-stop-blur-event",!0):e.preventDefault()}),a.on("blur","input",function(){c.hideSubmenu(a,o)}),o=C(`<span class="${r.arrowsdown}">
|
|
<img src="${this.builder.getImage(this.image.arrowsdown)}" />
|
|
</span>`).mousedown(function(e){var t=C(this);a.attr("created")||(c.createSubmenuItems(n,i.children,a),a.attr("created",!0)),t.attr("data-open")?(c.hideSubmenu(a,t),l.removeAttr("data-stop-blur-event")):(l[0].focus(),l.attr("data-stop-blur-event",!0),c.showSubmenu(a,t),(t=l.attr("data-setTimeoutId"))&&clearTimeout(t),t=setTimeout(function(){o.attr("data-open")&&l.removeAttr("data-stop-blur-event")},200),l.attr("data-setTimeoutId",t)),e.preventDefault()}),l.on("blur",function(){setTimeout(function(){l.attr("data-stop-blur-event")?l.removeAttr("data-stop-blur-event"):c.hideSubmenu(a,o)},0)}),t.append(o),n.arrows=o,s.append(a))},d.prototype.createSubmenuItems=function(e,t,i){this.createItems(t,"sub",i,e)},d.prototype.showSubmenu=function(e,t){let i=t.parent(),n=this.builder.elem,o=this.builder.workspace.elem,a=i.height(),{left:r,top:l}=n.offset(),{left:s,top:c}=i.offset(),d=o.offset()["left"],u=e.outerWidth(),p=o.outerWidth(),h;(h=s-r)+u>d+p&&(h=d+p-u-5),e.css({left:h+"px",top:c-l+a+"px"}).show(),t.attr("data-open","true")},d.prototype.hideSubmenu=function(e,t){t.removeAttr("data-open"),e.hide()},d.prototype.hideAllSubmenu=function(){this.$elem.find(">div>a,>div>input").each(function(){this.blur()})},d.prototype.bindBaseEvents=function(){let{$wrap:o,$content:a}=this,r=!1,l=this,s=this.className;o.on("click","."+s.arrow,function(e){let t=C(this),i=a.width(),n=a.scrollLeft();o.children("."+s.prev),o.children("."+s.next);t.hasClass(s.prev)?n=Math.max(n-i,0):n+=i,r=!0,a.scrollLeft(n),l.updateArrowVisible()}),a.on("scroll",function(){r?r=!1:l.updateArrowVisible()})},d.prototype.bindElementUpdateEvent=function(t){var e,i=t.elem,n=t.updateEvent&&t.updateEvent(),o=this;if(n)for(var a=0,r=n.length;a<r;a++)e=n[a],i.on(e.name,e.filter,function(){var e;return o.updateSelectedRange(t),"sub"===t.level&&(o.hideSubmenu(t.container,t.parent.arrows),(e=t.parent)&&e.config.keepSubmenu&&e.config.type===t.config.type&&o.updateTopMenu(e,t)),!1})},d.prototype.updateArrowVisible=function(){var{$wrap:e,$elem:t,$content:i,className:n}=this,o=i.width(),t=t.width(),i=i.scrollLeft(),a=n.hidden,r=e.children("."+n.prev),e=e.children("."+n.next);0<i?r.removeClass(a):r.hasClass(a)||r.addClass(a),o<t&&e.removeClass(a),t<=o+i&&(e.hasClass(a)||e.addClass(a))},d.prototype.updateTopMenu=function(e,t){t=t.options;C.extend(e.config.options,t),C.extend(e.options,t),e.updateImage(t.image)},d.prototype.updateSelectedRange=function(e){var t=this.grid,i=e.config,t=t.getSelected();0===t.length&&i.target||(i=this.getSelectedRange(i,t),this.updatePropertiesBySelectedRange(e,i),this.updateSelectedRangeByCustomer(e,i))},d.prototype.getSelectedRange=function(e,t){var i;return"cell"===e.target?i=t:"control"===e.target&&(i=t.find("."+this.workspace.className.relateProperty)),i},d.prototype.updatePropertiesBySelectedRange=function(e,t){var i=this,n=e.config,o=this.builder.options.pattern,a={names:e.options.name,values:e.options.value};!0===n.property&&("function"==typeof n.fn?n.fn.call(e,function(){p.updatePropertiesBySelecteds(o,i.grid,a.names,a.values,t)}):p.updatePropertiesBySelecteds(o,i.grid,a.names,a.values,t))},d.prototype.updateSelectedRangeByCustomer=function(e,t){var i=e.config;!1===i.property&&"function"==typeof i.fn&&i.fn.call(e,t,this.grid)},d.prototype.updateItems=function(e){for(var t,i,n,o=this.items,a=this.grid,e=e.closest("td"),r=e.attr("data-type"),l=e.attr("data-property-field"),e=p.getPosition(e),s=a.getPropertyData(r,l,e),c=a.getPropertyData(null,null,e),d=0,u=o.length;d<u;d++)i=null,(t=o[d]).config.property&&("cell"===t.config.target?i=s:"control"===t.config.target&&c&&(i=c)),null!==i?(i=i[t.config.options.name],(n=t.parent)&&n.config.keepSubmenu&&(t.activeValueConver&&(i=t.activeValueConver(i,a)),t.options.value===i&&this.updateTopMenu(t.parent,t)),"top"==t.level&&(t.options.value=i),t.setActive(i)):t.setActive(null)},d.prototype.resize=function(){this.updateArrowVisible()},d.prototype.destroy=function(){this.className=null,this.menu=null,this.menucontrol=null,this.order=null,this.builder=null,this.workspace=null,this.proerty=null,this.grid=null,this.$elem=null,this.$wrap=null,this.$container=null,this.$wrap.remove()},m.prototype.init=function(e){var t,i=e.toolbox,n={},o=C.extend(!0,{},p.config);if(i&&"object"==typeof i){for(var a in i)n[a]=p.toolbox._add(a,i[a]);n=C.extend(!0,{},p.toolbox,n)}else n=C.extend(!0,{},p.toolbox);e.toolbox={},t=C.extend(!0,{},p.property),e.menu&&e.menu.order&&0<e.menu.order.length&&("replace"===e.menu.type?o.menu.order=e.menu.order:o.menu.order=o.menu.order.concat(e.menu.order),delete e.menu.order),e.control&&e.control.order&&0<e.control.order.length&&(o.control.order=e.control.order,delete e.control.order),this.options=C.extend(!0,o,e,{toolbox:n,property:t}),this.options.data||(this.options.data={}),!1===this.options.autoResize&&(this.autoResize=!1),this.options.enable.applying["paste-data"]&&(this.options.enable.applying["event-select-cells"]=!0,this.options.shortcutKey.order.push("paste-data"))},m.prototype.create=function(){var e=this.options.pattern,t=[this.className.builder,this.className[e]].join(" ");switch(this.resize(this.options.width,this.options.height),this.elem.addClass(t),this.createLoading(),e){case"design":this.createDesignWorkspace(),this.createMenu();break;case"applying":this.createApplyingWorkspace();break;case"view":this.createViewWorkspace()}this.bindReisze()},m.prototype.createLoading=function(){this.loading=C(["<div class='formbuilder-loading-container'>"," <div class='formbuilder-loading-layout'></div>"," <div class='formbuilder-loading-img'></div>","</div>"].join("")),this.elem.append(this.loading)},m.prototype.createMenu=function(){this.menu=new d,this.menu.create(this.elem,this)},m.prototype.createDesignWorkspace=function(){var e=this.elem,t=C("<div></div>"),i=C("<div></div>"),n=C("<div></div>");this.toolbox=new l,this.toolbox.create(i,this),this.proerty=new r,this.proerty.create(n,this),this.elem.append(i),this.elem.append(t),this.elem.append(n),this.workspace=new o,this.workspace.create(t,this),this.proerty.grid=this.workspace.grid,this.bindDrag(),this.contextmenu=new s,this.contextmenu.create(this),this.shortcutKey=new c(this),this.showProperty("_table","table",{x:-1,y:-1}),e.on("contextmenu",function(){return!1})},m.prototype.createApplyingWorkspace=function(){var e=C("<div></div>");this.elem.append(e),this.workspace=new a,this.workspace.create(e,this),this.createPaging(),this.shortcutKey=new c(this)},m.prototype.createViewWorkspace=function(){var e=C("<div></div>");this.elem.append(e),this.workspace=new t,this.workspace.create(e,this),this.createPaging()},m.prototype.createPaging=function(){this.options&&this.options.data.table.paging&&(this.elem.addClass(this.className.hasPaging),this.paging=new e,this.paging.create(this.elem,this))},m.prototype.showProperty=function(e,t,i){var n=this.workspace.grid,o=n.getPropertyControl(e,i),a=n.getPropertyData(e,t,i),n=n.getPropertyItems(e,t,i);this.proerty.show(n,a,i,o)},m.prototype.getDrakeContainers=function(){var e=this.workspace,t=this.toolbox,t=t.elem.find("."+t.className.itemContent).toArray();return e.elem.find("."+e.className.enableDrop).toArray().concat(t)},m.prototype.bindDrag=function(){var t=this,a=this.workspace,r=a.grid,o=this.toolbox,e=this.getDrakeContainers(),l=i(e,{moves:function(e,t,i){var n="."+o.className.itemContent;return p.log("into moves"),0<C(i).closest(n).length},copy:function(e){return C(e).hasClass(o.className.item)},accepts:function(e,t){t=C(t);return t.hasClass(a.className.enableDrop)&&0===t.find("."+a.className.item).length}});l.on("cloned",function(e){C(e).addClass(t.className.dragging)}),l.on("drop",function(e,t,i){var n,o;p.log("into drop"),n=(e=C(e)).parent(),i=C(i),o=a.className,!t&&0===n.length||(t=p.getPosition(n),i.hasClass(o.enableDrop)||(i=(e.attr("data-path")||"").split(" "),a.addControl(e,{path:i},t),r.setSelectedCell(n),o=a.findControlObj(t.x,t.y).container,r.showGridProperty(o)),p.log("moves: "+l.dragging))}),l.on("dragend",function(){p.log("into dragend")}),l.on("drag",function(){p.log("into drag")}),l.on("cancel",function(){p.log("into cancel")}),this.drake=l},m.prototype.updateProperty=function(e){var t=e.closest("td"),i=e.attr("data-type"),t=t.attr("data-property-field"),e=p.getPosition(e);this.contextmenu.hide(),this.showProperty(i,t,e)},m.prototype.isDraging=function(){return 0<C("body>div."+this.className.dragging).length},m.prototype.loadData=function(e){var t=this.workspace,i=t.grid;this.options.data=e,this.workspace.data=e,i.options=e,i.update(),t.renderGrid(),this.showProperty("_table","table",{x:-1,y:-1})},m.prototype.getData=function(){var e=this.workspace,t=e.getData();return e.processData(t),t},m.prototype.export=function(){return this.workspace.exportData()},m.prototype.check=function(){return this.workspace.checkValue()},m.prototype.resize=function(e,t){var i=this.elem.parent(),n=this.menu,o=this.options.pattern,a=t||i.height();!t&&(a<=0||"BODY"===i[0].nodeName.toUpperCase())?(a="auto",this.elem.addClass(this.className.autoHeight)):this.elem.removeClass(this.className.autoHeight),this.elem.width(e=e||"100%"),"design"===o&&"auto"===a&&(a=C(u).height()-12),this.elem.height(a),n?.resize()},m.prototype.resizeControls=function(){var e,t,i,n,o,a,r,l,s,c=this.options.pattern;if(this.workspace)for(n=0,t=(e=this.workspace.grid.options.controls).length;n<t;n++)for(o=0,i=(a=e[n]).length;o<i;o++)(r=a[o])&&r.options&&(l=r.property,null!==(s=r.options).width&&p.updateProperty(c,"width",r,s,l),null!==s.height&&p.updateProperty(c,"height",r,s,l))},m.prototype.resizeAll=function(e,t){this.resize(e,t),this.resizeControls()},m.prototype.bindReisze=function(){var e=this;this.autoResize&&C(u).resize(function(){e.resizeAll()})},m.prototype.getImage=function(e){return p.getImage(this.options.url.images,e)},m.prototype.destroy=function(){var e;"design"===this.options.pattern&&(this.drake.destroy(),this.elem.unbind(),this.toolbox.destroy(),this.proerty.destroy(),this.contextmenu.destroy(),this.shortcutKey.destroy()),(e=this.workspace).elem.unbind(),(e=e.grid).grid=null,e.destroy(),e=null,this.elem.empty(),this.elem.removeAttr("style class"),this.options=null,this.applying=null,this.toolbox=null,this.proerty=null,this.design=null,this.contextmenu=null,this.drake=null,this.elem=null};var f={init:function(e,t){1===arguments.length&&(t=arguments[0],e={}),t.empty(),t.removeClass("formbuilder formbuilder-applying");e=new m(t,e);return t.data("formbuilder",e),t},resize:function(e,t){return this.resizeAll(e.width,e.height),t},data:function(e){if(2!==arguments.length)return this.getData();this.loadData(e)},export:function(){return this.export()},check:function(){return this.check()},getDataByCell:function(e){return this.workspace.getDataByCell(e)},getDataByPosition:function(e){return this.workspace.getDataByPosition(e.x,e.y)},getDataByActiveCell:function(){return this.workspace.getDataByActiveCell()},insertDatasetRows:function(e){return this.workspace.insertDatasetRows(e)},destroy:function(e){return e.removeData("formbuilder"),this.destroy(),e}};jQuery.fn.formbuilder=function(){var e=arguments[0],t=arguments,i=this.data("formbuilder");if(f[e])e=f[e],t=Array.prototype.slice.call(arguments,1);else{if("object"!=typeof e&&e)return C.error("Method "+e+" does not exist on jQuery.formbuilder"),this;t=Array.prototype.slice.call(arguments),e=f.init}return i||e===f.init?(t.push(this),e.apply(i,t)):(C.error("jQuery.formbuilder not instance"),this)}}(jQuery,_,dragula,window),function(){"use strict";jQuery.formbuilder.language.en={toolbox:{table:"Table",label:"Label",textbox:"TextBox",hidden:"HiddenInput",textarea:"TextArea",contenteditable:"ContentEditable",date:"Date",time:"Time",datetime:"Datetime",checkboxgroup:"ChecBoxGroup",radiogroup:"RadioGroup",select:"Select",button:"Button",textvalue:"TextValue",image:"Image",fileupload:"FileUpload",delete:"Delete",link:"Link",editbutton:"editButton",unchecked:"Unchecked",multipleSelect:"Multipe Select","data-insert":"Insert Data","data-remove":"Remove Data",datactrls:"Data Contrls",datasetindex:"line number",Retransmission:"Retransmission",transferError:"File data transfer error",getUrlError:"Failed to get file temporary URL",storageFailed:"File storage failed"},property:{language:"Language","multi-language":"Multi Language","language-multi-default":"Default Multi Language","language-zh-CN":"CN","language-EN":"EN",label:"Label",name:"Name",value:"Value",check:"Check",className:"ClassName",operate:"Operate",placeholder:"Placeholder",options:"Options",items:"Options",removeOption:"Remove Option",text:"Text",addOption:"Add Option",regex:"Regular Expression",width:"Width",height:"Height",none:"None","table-width":"Table Width","table-height":"Table Height","table-rows":"Table Rows","table-columns":"Table Columns","table-row-height":"Row Height","table-column-width":"Column Width","table-center":"Table Center","print-size":"Print Size","print-direction":"Print Direction","print-direction-v":"Vertical","print-direction-h":"Horizontal",a3:"A3",a4:"A4","table-cell-rowspan":"RowSpan","table-cell-colspan":"ColSpan","table-cells-merge":"Merge","table-cells-split":"Split","table-cells-operate":"Cells Operate","table-border":"Table Border","border-solid":"Solid","border-dashed":"Dashed","border-solid-heavy":"Heavy Solid","border-solid-double":"Double Solid","border-none":"None","background-color":"Background Color","border-color":"Border Color","border-all":"Border All","border-left":"Border Left","border-right":"Border Right","border-top":"Border Top","border-bottom":"Border Bottom","cell-border-position":"Cell Border Position",obliqueline:"Oblique Line",align:"Align","align-left":"Left","align-center":"Center","align-right":"Right","vertical-align":"Vertical Align","vertical-align-top":"Top","vertical-align-middle":"Middle","vertical-align-bottom":"Bottom","text-align":"Text Align","text-vertical-align":"Text Vertical Align","font-family":"Font Family","font-size":"Font Size","font-weight":"Font Weight","font-style-italic":"Italic",color:"Color","text-decoration-underline":"Underline","line-height":"Line Height",indent:"Indent","word-vertical":"Word Vertical","cell-border-style":"Border Style","cell-border-display":"Border Display","image-upload":"Image Upload",rows:"Rows",ok:"Ok",overflow:"overflow",field:"bind field",id:"id","top-parent":"Top Parent","left-parent":"Left Parent","relation-position":"Relation Position","relation-type":"Relation Type","filed-relation":"Field Relation","direction-horizontal":"Direction Horizontal","direction-vertical":"Direction Vertical","extension-direction":"Extension Direction","fill-dynamic-data":"Fill Dynamic Data","auto-merger-cell":"Auto Merger",anchoring:"Anchoring",paging:"Paging","cascade-source":"Cascade Source","cascade-control":"Cascade Control","row-and-col":"row:col","equal-ratio":"Equal Ratio","equal-ratio-width":"Equal Ratio By Width","equal-ratio-height":"Equal Ratio By Height","fixed-value":"Fixed Value","remove-all":"Remove All",Multiplechoice:"Multiple Choice",simple:"Simple",multiple:"Multiple",filterable:"Filterable","allow-create":"Allow Create",disabled:"Disabled",readonly:"readonly",required:"required",autoQueryAllFields:"Auto Query All Fields","applicant-department":"Applicant Department",defaultValue:"Default Value","applicant-name":"Applicant Name","applicant-phone-number":"Applicant-phone Number","application-date":"Application Date","process-id":"Process Example Id","process-steps":"Process Steps","form-number":"Form Number","db-table-field":"Associated Table Fields",objectId:"objectId",cascadeFn:"Fn(params)","effect-position":"effect position",cascade:"cascade","variable-name":"variable-name",selectCascade:"Select Cascade",positionTip:"1:1",dbTableName:"Table Fields"},contextmenu:{remove:"Remove",merge:"Merge Cells","canel-merge":"Split Cell",cut:"Cut",copy:"Copy",paste:"Paste","insert-row":"Insert Row","insert-column":"Insert Column","remove-row":"Remove Row","remove-column":"Remove Column"},menu:{"table-cells-merge":"Merge","table-cells-split":"Split","table-cells-operate":"Cells Operate","table-border":"Table Border","border-solid":"Solid","border-dashed":"Dashed","border-none":"None","border-none--left":"Left None","border-none--right":"Right None","border-none--top":"Top None","border-none--bottom":"Bottom None",align:"Align","align-left":"Left","align-center":"Center","align-right":"Right","vertical-align":"Vertical Align","vertical-align-top":"Top","vertical-align-middle":"Middle","vertical-align-bottom":"Bottom","font-family":"Font Family","font-size":"Font Size","font-weight":"Font Weight","font-style-italic":"Italic",color:"Color","cell-border-color":"Cell Border Color","cell-background-color":"Cell Background Color","text-decoration-underline":"Underline","cell-border-style":"Border Style","cell-border-display":"Border Display","image-upload":"Image Upload",remove:"Remove",merge:"Merge Cells","canel-merge":"Split Cell",cut:"Cut",copy:"Copy",paste:"Paste",ok:"Ok",save:"save",version:"version"},table:{"can-not-remove":"template row Can't remove"},applying:{defaultCheckFailed:"This item is required"}}}(),function(e){e.formbuilder.language["zh-CN"]={toolbox:{title:"工具栏",table:"网格",label:"标签",textbox:"文本框",hidden:"隐藏文本框",textarea:"多行文本框",contenteditable:"可编辑内容区",date:"日期",time:"时间",datetime:"日期时间",checkboxgroup:"多选按钮组",radiogroup:"单选按钮组",select:"下拉选择",button:"功能按钮",textvalue:"自定义选择按钮",image:"图片",fileupload:"文件上传",delete:"删除",link:"超链接",editbutton:"编辑按钮",unchecked:"未通过验证",multipleSelect:"多选标签组","remove-all":"清空","data-insert":"插入数据","data-remove":"删除数据",datactrls:"数据操作",datasetindex:"行号",Retransmission:"重传",transferError:"文件数据传输错误",getUrlError:"文件临时URL获取失败",storageFailed:"文件存储失败"},property:{language:"语言","language-multi-default":"默认多语言","multi-language":"多语言","language-zh-CN":"中文","language-EN":"英文",title:"属性",label:"标签",name:"名称",text:"显示值",value:"值",check:"验证",className:"样式名称",placeholder:"占位符",options:"选项",items:"选项",operate:"操作",removeOption:"删除选项",addOption:"添加选项",regex:"正则验证",width:"宽度",height:"高度",none:"无","table-width":"网格宽度","table-height":"网格高度","table-rows":"网格行数","table-columns":"网格列数","table-row-height":"行高","table-column-width":"列宽","table-center":"网格居中","table-cell-rowspan":"跨行","table-cell-colspan":"跨列","table-cells-operate":"单元格操作","table-cells-merge":"合并","table-cells-split":"拆分","print-size":"打印纸张","print-direction":"打印方向","print-direction-v":"纵向","print-direction-h":"横向",a3:"A3",a4:"A4","table-border":"边框","border-solid":"实线","border-dashed":"虚线","border-solid-heavy":"粗实线","border-solid-double":"双实线","border-none":"无","background-color":"背景色","border-color":"边框颜色","border-all":"全部","border-left":"左边","border-right":"右边","border-top":"上边","border-bottom":"下边","cell-border-position":"边框位置",obliqueline:"斜线",align:"水平对齐","align-left":"居左","align-center":"居中","align-right":"居右","vertical-align":"垂直对齐","vertical-align-top":"居上","vertical-align-middle":"居中","vertical-align-bottom":"居下","text-align":"文字水平","text-vertical-align":"文字垂直","font-family":"字体类型","font-size":"字体大小","font-weight":"字体加粗","font-style-italic":"斜体",color:"字体颜色","text-decoration-underline":"下划线","line-height":"行高",indent:"文本缩进","cell-border-style":"边框类型","cell-border-display":"边框显示","word-vertical":"纵向文字","image-upload":"图片上传",rows:"行数",ok:"确定",overflow:"滚动条",field:"绑定字段",id:"编号","top-parent":"上父","left-parent":"左父","filed-relation":"字段关联","relation-type":"关联类型","relation-position":"关联位置","direction-horizontal":"横向扩展","direction-vertical":"纵向扩展","extension-direction":"扩展方向","fill-dynamic-data":"动态数据","auto-merger-cell":"自动合并",anchoring:"分页锚定",paging:"分页栏","cascade-source":"数据源","cascade-control":"级联元件","row-and-col":"行:列","equal-ratio":"等比缩放","equal-ratio-width":"按宽度等比缩放","equal-ratio-height":"按高度等比缩放","fixed-value":"固定值",Multiplechoice:"多选",simple:"单选",multiple:"多选",filterable:"可输入","allow-create":"允许创建",disabled:"禁用",readonly:"只读",required:"必填",autoQueryAllFields:"自动带入",defaultValue:"默认参数","applicant-department":"申请人部门","applicant-name":"申请人名称","applicant-phone-number":"申请人手机号","application-date":"申请日期","process-id":"流程实例id","process-steps":"流程步骤","form-number":"表单编号","db-table-field":"关联表格字段",objectId:"项目ID","effect-position":"自动带入",cascade:"级联","variable-name":"参数名",cascadeFn:"Fn(params)",selectCascade:"下拉级联",positionTip:"1:1",dbTableName:"表格字段"},contextmenu:{remove:"删除",merge:"合并单元格","canel-merge":"取消合并单元格",cut:"剪切",copy:"拷贝",paste:"粘贴","insert-row":"插入行","insert-column":"插入列","remove-row":"删除行","remove-column":"删除列"},menu:{"table-cells-merge":"合并","table-cells-split":"拆分","table-border":"边框","border-solid":"实线","border-dashed":"虚线","border-solid-heavy":"粗实线","border-solid-double":"双实线","border-none":"无边框","border-none--left":"无左边框","border-none--right":"无右边框","border-none--top":"无上边框","border-none--bottom":"无下边框",align:"水平对齐","align-left":"居左","align-center":"居中","align-right":"居右","vertical-align":"垂直对齐","vertical-align-top":"居上","vertical-align-middle":"居中","vertical-align-bottom":"居下","font-family":"字体类型","font-size":"字体大小","font-weight":"字体加粗","font-style-italic":"斜体",color:"字体颜色","cell-border-color":"边框颜色","cell-background-color":"背景颜色","text-decoration-underline":"下划线","cell-border-style":"边框类型","cell-border-display":"边框显示","image-upload":"图片上传",remove:"删除",merge:"合并单元格","canel-merge":"取消合并单元格",cut:"剪切",copy:"拷贝",paste:"粘贴",ok:"确定",save:"保存",version:"版本"},table:{"can-not-remove":"模板行不允许删除"},applying:{defaultCheckFailed:"该项为必填项"}},e.formbuilder.language.zhs=e.formbuilder.language["zh-CN"]}(jQuery),function(p){p.formbuilder.toolbox._base={type:"",title:"",icon:"",elem:null,contextmenu:"control",language:"zh-CN",className:"",container:null,options:{type:null,align:"left","vertical-align":"middle","text-align":"left","text-vertical-align":"middle",width:"100%",height:null,"font-family":"微软雅黑","font-size":12,"font-weight":!1,"font-style-italic":!1,"text-decoration-underline":!1,color:"#333333",id:null,x:null,y:null,"relation-position":null,"extension-direction":null,"fill-dynamic-data":null,anchoring:!0,check:null,"check-tooltip":"",readonly:null,required:!1,text:"",value:""},getLocalText:function(e){var t=p.formbuilder.language[this.language]||p.formbuilder.language["zh-CN"];return t.toolbox[e]||t.toolbox[this.title]||this.title||""},design:function(){var e=this.getLocalText(this.title);return p("<label class='formbuilder-control-label'>${"+e+"}</label>")},applying:function(){},view:function(){var e=this.options.value;return p("<label class='forbuilder-control-view-lable'>"+(e=null!=e&&""!==e?e:" ")+"</label>")},getValue:function(){return this.options.value},setValue:function(){},updateValue:function(e){null!=e?(this.options.value=e,this._updateContent()):(e=this.getValue(),this.options.value!=e&&(this.options.value=e))},applyingRemove(){},checkValue:function(){var e=this.options,t=e.value,i=(e.check,e.readonly),n=e.required;e["check-tooltip"]||this.getLocalText("unchecked");return!(n&&!(t&&0!=t?.length||i))},updateProperties:function(){var e=this.builder.workspace,t=this.property,i=this.options;e.updatePropertyItems.call(e,this,i,t)},getGrid:function(){return this.builder.workspace.grid},beforeInit(){this._beforeInit()},beforeGetData(){},scroll(){},valueChange(){this._valueChange()},_beforeInit(){this._setCascadeMap(),this._setDefaultValue()},_setCascadeMap(){let{options:e,builder:t}=this,i=t.workspace["cacheData"],n=i["cascadeMap"],{_designX:o,_designY:a,cascade:r={}}=e,{variable:l=[],script:s=[]}=r;n=n||(i.cascadeMap=new Map),1==s.length&&l.length&&l.forEach(e=>{let t=e["position"],i=n.get(t);i||(i=new Set,n.set(t,i)),i.add(o+":"+a)})},_setDefaultValue(){let e=this.options,t=this.builder.options,{defaultValue:i,value:n}=e,o,a;if(null!=i&&(null==n||""==n)){if(1==(i=i.split(".")).length)a=e[i[0]];else for(o=t;0<i.length;){if(1==i.length){a=o[i[0]],i.length=0;break}if(o=o[i[0]],i.splice(0,1),!o)break}null!=a&&("object"!=typeof a&&(a={value:a}),p.extend(e,a))}},_valueChange(){let{options:e,builder:t}=this,d=t["workspace"],{cacheData:i,events:u}=d,n=i["cascadeMap"],{_designX:o,_designY:a}=e,r=o+":"+a,l=n.get(r),s=[],c;l&&(l.forEach(e=>{s.push({position:e})}),{controls:c,row}=d.getEffectCell(e,s),c.forEach((t,n)=>{let o=t.options,a=row[n+1],{variable:e=[],script:i=[]}=o.cascade||{},r=e.filter(e=>!(!e.position||!e["variable-name"])),l=i[0]?.cascadeFn,s=o.value,c;if(r?.length&&l){let e=d.getEffectCell(o,r)["row"],i={};e.forEach(e=>{var{"variable-name":e,value:t}=e;e&&(i[e]=t||"")});try{l="return "+l,c=new Function("params",l)(p.extend(!0,{},i))}catch(e){n=e["message"],n={message:n,error:e,errorType:"exeError",target:"control",options:a};u?.error?.(n)}null!=c&&c!==s&&t?.updateValue(c)}}))},_valueChange2(){var i=this.options,a=this.builder.workspace,{variable:r=[],script:l=[]}=i.cascade||{},r=r.filter(e=>!(!e.position||!e["variable-name"])),l=l.filter(e=>!(!e.position||!e.cascadeFn));if(r?.length&&l?.length){let e=a.getEffectCell(i,r)["row"],{row:n,controls:t}=a.getEffectCell(i,l),o={};e.forEach(e=>{var{"variable-name":e,text:t,value:i}=e;o[e]=t||i||""}),t.forEach((e,t)=>{var{cascadeFn:t="",value:i}=n[t+1]||{},t="return "+t,t=new Function("params",t)(p.extend(!0,{},o));null!=t&&t!==i&&e?.updateValue(t)})}},_updateContent(){var{options:e,builder:t,pattern:i,property:n}=this,t=t["workspace"],o=this.elem,i=this[i](),a={x:e.x,y:e.y};(this.elem=i).insertAfter(o),o.remove(),t.updatePropertyItems(this,e,n,a)},_updateOptions:function(e){this.options=p.extend(this.options,e)},property:{value:{hidden:!0,type:"textbox"},check:{type:"textbox",hidden:!0},className:{type:"textbox",hidden:!0,update:function(e){this.elem.addClass(e)}},"font-family":{text:"font-family",type:"combox",conver:function(e){return e=e||""},source:p.formbuilder["FONT-FAMILY"],update:function(e){this.container.css("font-family",e),this.container.find("*").css("font-family",e)}},"font-size":{text:"font-size",type:"combox",after:"vertical-align",source:p.formbuilder["FONT-SIZE"],conver:function(e){return e=e||""},update:function(e){this.container.css("font-size",e+"px"),this.container.find("*").css("font-size",e+"px")}},"font-weight":{text:"font-weight",type:"bool",source:{text:"font-weight",image:"font-weight.png"},update:function(e){e=e?"bolder":"normal";this.container.css("font-weight",e),this.container.find("*").css("font-weight",e)}},"font-style-italic":{text:"font-style-italic",type:"bool",source:{text:"font-style-italic",image:"font-style-italic.png"},update:function(e){e=!0===e?"italic":"normal";this.container.css("font-style",e),this.container.find("*").css("font-style",e)}},"text-decoration-underline":{text:"text-decoration-underline",type:"bool",source:{text:"text-decoration-underline",image:"text-decoration-underline.png"},update:function(e){!0===e?this.elem.css("text-decoration","underline"):this.elem.css("text-decoration","none")}},color:{text:"color",type:"colorpicker",update:function(e){this.container.css("color",e),this.container.find("*").css("color",e)}},overflow:{text:"overflow",hidden:!0,type:"bool",source:{text:"overflow",image:"overflow.png"},update:function(e){this.container.parent().css({overflow:e?"auto":"hidden"})}},id:{text:"id",type:"textbox",source:{readonly:!0}},"extension-direction":{text:"extension-direction",type:"combox",source:[{text:" ",value:""},{text:"direction-vertical",value:"vertical"}]},"relation-position":{text:"relation-position",type:"textbox",source:{placeholder:"row-and-col"}},"auto-merger-cell":{text:"auto-merger-cell",hidden:!0,type:"bool",source:{text:"auto-merger-cell",image:"auto-merger-cell.png"},update:function(e){}},"fill-dynamic-data":{hidden:!0,text:"fill-dynamic-data",type:"textbox"},anchoring:{hidden:!0,text:"anchoring",type:"bool",source:{text:"anchoring",image:"anchoring.png"},update:function(e){}},"height-container":{hidden:!0,order:1001,after:"vertical-align",update:function(e,t){var i=this.container.parent(),n=i.parent(),n=this.getGrid().getCellHeight(n,t);i.height(n)}},width:{text:"width",type:"textbox",after:"align",order:1002,conver:function(e){return!isNaN(e)&&e?Number(e):e||""},update:function(e){this.container.outerWidth(e),this.container.attr("data-width",e)}},height:{text:"height",hidden:!0,type:"textbox",after:"vertical-align",order:1003,conver:function(e){return!isNaN(e)&&e?Number(e):e||""},update:function(e){this.container.height(e),this.container.attr("data-height",e)}},align:{text:"align",type:"buttons",order:1004,source:[{name:"left",text:"align-left",image:"align-left.png",selected:!1},{name:"center",text:"align-center",image:"align-center.png",selected:!0},{name:"right",text:"align-right",image:"align-right.png",selected:!1}],update(e){var t=this.$content,i="start";switch(e){case"center":i="center";break;case"left":i="start";break;case"right":i="end"}t.css({"justify-content":i})}},"vertical-align":{text:"vertical-align",type:"buttons",order:1005,source:[{name:"top",text:"vertical-align-top",image:"vertical-align-top.png",selected:!0},{name:"middle",text:"vertical-align-middle",image:"vertical-align-middle.png",selected:!1},{name:"bottom",text:"vertical-align-bottom",image:"vertical-align-bottom.png",selected:!1}],update:function(e,t){var i=this.$content,t="center";switch(e){case"top":t="flex-start";break;case"middle":t="center";break;case"bottom":t="flex-end"}i.css({"align-items":t})}},"text-align":{text:"text-align",type:"buttons",order:1005,source:[{name:"left",text:"align-left",image:"text-align-left.png",selected:!0},{name:"center",text:"align-center",image:"text-align-center.png",selected:!1},{name:"right",text:"align-right",image:"text-align-right.png",selected:!1}],update:function(e){this.container.css("text-align",e)}},readonly:{text:"readonly",type:"bool",source:{text:"readonly",image:"anchoring.png"},update:function(e){}},defaultValue:{text:"defaultValue",hidden:!0,type:"combox",source:[{text:" ",value:""},{text:"applicant-department",value:"systemInfo.applicantDepartment"},{text:"applicant-name",value:"systemInfo.applicantName"},{text:"applicant-phone-number",value:"systemInfo.applicantPhoneNumber"},{text:"application-date",value:"systemInfo.applicationDate"},{text:"process-id",value:"systemInfo.processId"},{text:"process-steps",value:"systemInfo.processSteps"},{text:"form-number",value:"systemInfo.formNumber"}]},required:{text:"required",type:"bool",source:{text:"required",image:"anchoring.png"},update:function(e){}},cascade:{text:"cascade",type:"groupOptions",hideSelect:!0,hidden:!0,groups:[{name:"variable",text:"define-variables",elems:[{name:"position",placeholder:"positionTip"},{name:"variable-name",placeholder:"variable-name"}]},{name:"script",text:"define-script",hideAdd:!0,hideRemove:!0,elems:[{name:"cascadeFn",type:"textarea",placeholder:"cascadeFn"}]}],excludePattern:["applying","view"],updateInLoad:!1,update:function(e){this._updateOptions({cascade:e})}}}},p.formbuilder.toolbox.add=function(e,t){this[e]=p.formbuilder.toolbox._add(e,t)},p.formbuilder.toolbox._add=function(e,t){return p.extend(!0,{},this._base,t,{type:e,options:{type:e}})}}(jQuery,_),function(e){"use strict";e.formbuilder.toolbox.add("_title",{title:"title",icon:"icon-title",design:function(){return e("<div><label>"+this.text(this.options.label)+"</label></div>").addClass(this.className)},applying:function(){return this.design()},className:"formbuilder-control-title",options:{label:"",value:"label",className:""}})}(jQuery),function(c,d){"use strict";c.formbuilder.toolbox.add("label",{title:"label",icon:"label.svg",cache:{indent:[]},design:function(){return c("<label class='"+this.className.container+"'>"+this.options.value+"</label>")},applying:function(){return this.design()},view:function(){return this.design()},getMultiLanguage:function(e){var t="",i=this;return"i18n"===e?d(this.property["multi-language"].source).chain().map(function(e){return e.name}).each(function(e){e=i.options.i18n[e];e&&(t=t?t+"\n"+e:e)}).value():t=this.options.i18n[e],t=t||""},getValue:function(){return this.options.value},setValue:function(e){this.options.value=e},className:{container:"formbuilder-control-label",vertical:"formbuilder-control-label-vertical",space:"formbuilder-control-label-space"},options:{label:"",value:"label",className:"",readonly:!0,"multi-language":"zh-CN",i18n:{"zh-CN":"",en:""}},property:{height:{hidden:!1},value:{text:"value",hidden:!1,type:"textarea",after:["font-size"],designUpdate:function(e,t,i){var n=this.property.value.update;e=this.property.value.getRealValue.call(this,e),d.trim(e)?this.elem.css({opacity:1,filter:"Alpha(opacity=100)"}):(e=this.title,this.elem.css({opacity:.3,filter:"Alpha(opacity=30)"})),n.call(this,e,t,i)},update:function(e,t,i){var e=this.property.value.getRealValue.call(this,e).split("\n"),r=[],l=i["word-vertical"],s=this;this.cache.indent=[],d.each(e,function(e){var t,i,n,o,a="[--]";l&&(e=(e=d.map(e.split(""),function(e){return e+"<br/>"})).join("")),t=c.trim(e),n=(o=(i=e.replace(t,a)).split(a))[0]?o[0].length:0,o=o[1]?o[1].length:0,s.cache.indent.push({left:n,right:o}),e=i.replace(/ /g,"<span class='"+s.className.space+"'></span>").replace(a,t),r.push("<p>"+e+"</p>")}),this.elem.html(r.join("")),l?this.elem.addClass(this.className.vertical):this.elem.removeClass(this.className.vertical)},getRealValue:function(e){return e||(e=this.getMultiLanguage(this.options["multi-language"]),this.options.value=e),e}},"text-vertical-align":{text:"text-vertical-align",type:"buttons",updateInLoad:!0,source:[{name:"top",text:"vertical-align-top",image:"text-align-top.png",selected:!0},{name:"middle",text:"vertical-align-middle",image:"text-align-middle.png",selected:!1},{name:"bottom",text:"vertical-align-bottom",image:"text-align-bottom.png",selected:!1}],update:function(e){this.container.find("p").css("vertical-align",e)}},"word-vertical":{text:"word-vertical",type:"bool",after:["value"],updateInLoad:!0,source:{text:"word-vertical",image:"word-vertical.png"},update:function(e,t,i){}},"font-size":{text:"font-size",type:"combox",after:["vertical-align","text-align","text-vertical-align","width","height","line-height","indent"],updateInLoad:!0,source:c.formbuilder["FONT-SIZE"],conver:function(e){return e=e||""},update:function(e){this.elem.find("p").css("font-size",e+"px")}},"font-family":{update:function(e){this.elem.find("p").css("font-family",e)}},"line-height":{text:"line-height",type:"text",updateInLoad:!0,order:2001,update:function(e,t,i){e&&this.elem.find("p").css("line-height",e+"px")}},indent:{text:"indent",type:"text",updateInLoad:!0,order:2002,conver:function(e){return!1===isNaN(e)?Number(e):e},update:function(e,t,i){var n,o,a;e&&(o=(n=this).elem.find("."+this.className.space),(a=this.elem.find("p")).css({"text-align":"left","padding-left":"0"}),o.css({"margin-left":0,"text-align":"left"}),d.isNumber(e)?o.css("margin-left",e+"px"):"auto"===e&&(this.container.outerWidth("100%"),this.elem.width("100%"),this.options.width="100%",a.each(function(e){e=n.cache.indent[e];e&&(0<e.left&&0===e.right?c(this).css("text-align","right"):0<e.left&&0<e.right&&c(this).css("padding-left",Math.floor(e.left/(e.left+e.right)*100)+"%"))})))}},"multi-language":{text:"multi-language",hidden:!0,type:"buttons",after:["value"],updateInLoad:!1,source:[{name:"zh-CN",text:"language-zh-CN",image:"i18n-zh-CN.png",selected:!0},{name:"en",text:"language-EN",image:"i18n-en.png",selected:!1},{name:"i18n",text:"language-multi-default",image:"i18n.png",selected:!1}],update:function(e){e=this.getMultiLanguage(e);this.options.value=e}},"relation-position":{hidden:!0},"extension-direction":{hidden:!0},readonly:{hidden:!0},required:{hidden:!0},cascade:{hidden:!0}}})}(jQuery,_),function(t){"use strict";t.formbuilder.toolbox.add("button",{title:"button",icon:"button.svg",applying:function(){var e=['<div class="',this.className,'">',"<a>","<img class='",this.className,"-img","' />","<span class='",this.className,"-text","'>","</span>","</a>","</div>"].join("");return t(e).attr({name:this.options.name,type:this.options.type}).addClass(this.className)},className:"formbuilder-control-button",options:{label:"",name:"",icon:"button.svg",value:"button",className:""},property:{value:{text:"value",type:"textbox",update:function(e){e&&this.elem.find(">a>span").text(e).show()}},icon:{text:"value",type:"textbox",update:function(e){e&&this.elem.find(">a>img").attr("src",this.getImage(e)).show()}},"text-align":{hidden:!0},color:{text:"color",type:"colorpicker",update:function(e){this.container.css("color",e)}}},getImage:function(e){return e&&-1!==e.indexOf("/")?e:this.builder.getImage(e)}})}(jQuery),function(i){"use strict";var e,t,n={title:"datactrls",icon:"datactrls.svg",design:function(){var e=this.getImage(this.options.value[0]),t=this.getImage(this.options.value[1]),e=["<div class='",this.className,"'>","<span class='",this.className,"-insert","'",">"," <img class='",this.className,"-img-insert","'"," src='",e,"'"," />","</span>","<span class='",this.className,"-remove","'",">"," <img class='",this.className,"-img-remove","'"," src='",t,"'"," />","</span>","</div>"].join("");return i(e).attr({name:this.options.name,type:this.options.type}).addClass(this.className)},applying:function(){var e=this.design();return this.bindEvent(e),e},view:function(){},bindEvent:function(e){var t=e.find("."+this.className+"-insert"),e=e.find("."+this.className+"-remove"),i=this.builder.workspace.grid,n=this.options.datasetId;n&&(t.on("click",function(e){i.insertDatasetRowBySelected(n)}),e.on("click",function(e){i.removeDataRowBySelected(n)}))},className:"formbuilder-control-datactrls",keepPattern:!0,options:{label:"",name:"",icon:"",value:["data-insert.png","data-remove.png"],className:"",datasetId:null},property:{"relation-dataset":{text:"relation-position",type:"textbox"}},getImage:function(e){return e&&-1!==e.indexOf("/")?e:this.builder.getImage(e)}};for(t in i.formbuilder.toolbox.add("datactrls",n),e=i.formbuilder.toolbox.datactrls.property)e[t].hidden=!0;e.align.hidden=!1,e["relation-dataset"].hidden=!1,e.anchoring.hidden=!1,e.cascade.hidden=!1}(jQuery),function(r){"use strict";r.formbuilder.toolbox.add("checkboxgroup",{title:"checkboxgroup",icon:"checkbox.svg",applying:function(){return this.create(!0)},view:function(){var e,t=this.options.items,i=this.options.value||[],n="";"string"==typeof i&&(i=[i]);for(var o=0,a=t.length;o<a;o++)e=t[o],-1!==i.indexOf(e.value)&&(n+=" "+e.text);return r("<label>"+n+"</label>")},create:function(e){return this.enableEdit=e,r("<div />").attr({type:this.options.type,name:this.options.name}).addClass(this.className)},createItems:function(e,t){for(var i,n=[],o=t?"":"disabled='disabled' readonly='readonly' ",a=this.options.value||[],r=0,l=e.length;r<l;r++)i=e[r],n.push(["<div class='formbuilder-control-checkbox'>","<input name='",this.options.name,"' class='' id='' value='",i.value,"' type='checkbox' ",o,-1!==a.indexOf(i.value)?"checked='checked'":"",">","<label for=''>",i.text,"</label></div>"].join(""));return n.join("")},className:"formbuilder-control-checkboxgroup",options:{required:!1,name:"",value:[],className:"",items:[{text:"option",value:"option"}]},getValue:function(){var t=[],i=this;return 0<this.elem.find("input:checkbox").length?(this.elem.find("input:checkbox").each(function(e){this.checked&&t.push(i.options.items[e].value)}),t):this.options.value},property:{value:{hidden:!0,excludePattern:["view"]},name:{text:"name",type:"textbox",update:function(e){this.elem.find("input:checkbox").attr("name",e)}},"font-family":{update:function(e){this.elem.find("label").css("font-family",e)}},"font-size":{update:function(e){this.elem.find("label").css("font-size",e+"px")}},"text-align":{},"font-weight":{text:"font-weight",type:"bool",source:{text:"font-weight",image:"font-weight.png"},update:function(e){e=e?"bolder":"normal";this.elem.find("label").css("font-weight",e)}},items:{type:"options",updateInLoad:!1,excludePattern:["applying","view"],update:function(e){this.updateProperties()}}}})}(jQuery),function(n){"use strict";const o=(e=0)=>0===e?"Etc/GMT":0<e?"Etc/GMT-"+e:"Etc/GMT+"+Math.abs(e),a=(e,t)=>e?dayjs(e).utc().format(t):"";const r=(e,t,i)=>e?dayjs.tz(e,"Etc/GMT").utc().tz(o(t)).format(i):"";function e(o){var t={date:{format:"Y-m-d",timepicker:!1},time:{format:"H:i:s",datepicker:!1},datetime:{format:"Y-m-d H:i:s"}}[o];return{applying:function(){var e=this.builder.options.language,i=this,e=(n.datetimepicker.setLocale(e="zhs"!=e&&"zh-CN"!=e?e:"zh"),n("<input />").datetimepicker({...t,onChangeDateTime:function(e,t){i.options.value=t.val()}}).attr({readonly:"readonly",name:this.options.name,placeholder:this.options.placeholder}).addClass(this.className).val(this.options.value));return e.removeAttr("readonly"),e},className:"formbuilder-control-"+o,options:{required:!1,name:"",value:"",className:""},getValue:function(){var e=this.elem;return"INPUT"==e.prop("nodeName")?e.val()||"":this.options.value},property:{value:{text:"value",type:"textbox",source:{},excludePattern:["view"],update:function(e){this.elem.val(e)}},defaultValue:{hidden:!1}},beforeInit:function(){this._beforeInit();var e=this.builder.options,t=e.formatter,e=e.timezone,i=this.options.value;"datetime"==o?this.options.value=r(i,e,t):"date"==o?(this.options.realValue=this.options.value,this.options.value=r(i,e,t).slice(0,10)):"time"==o&&19==i.length&&(this.options.value=i.slice(10,19))},scroll(){this.elem?.datetimepicker?.("hide")},beforeGetData:function(e,t){let i=e.value,n=t.specificDate||"2000-01-01";e.value&&("date"==o?(i+=" 00:00:00",e.value=a(i,t.formatter)):"time"==o?(i=n+" "+i,e.value=i):e.value=a(i,t.formatter))}}}n.formbuilder.toolbox.add("date",{title:"date",icon:"date.svg",...e("date")}),n.formbuilder.toolbox.add("datetime",{title:"datetime",icon:"datetime.svg",...e("datetime")}),n.formbuilder.toolbox.add("time",{title:"time",icon:"time.svg",...e("time")})}(jQuery),function(e){"use strict";e.formbuilder.toolbox.add("hidden",{title:"hidden",icon:"hidden.svg",applying:function(){return e("<input />").attr({type:this.options.type,name:this.options.name}).addClass(this.className).val(this.options.value)},getValue:function(){return"INPUT"==this.elem.prop("nodeName")?this.elem.attr("data-value"):this.options.value},className:"formbuilder-control-hidden",options:{name:"",value:"",className:""},property:{value:{text:"value",type:"textbox",update:function(e){this.elem.attr("data-value",e)}},"text-align":{hidden:!0}}})}(jQuery),function(a){"use strict";a.formbuilder.toolbox.add("radiogroup",{title:"radiogroup",icon:"radio-group.svg",create:function(e){var t=a("<div />").attr({type:this.options.type,name:this.options.name}).addClass(this.className),i=this.options.items;return t.append(this.createItems(i,e)),t},applying:function(){return this.create(!0)},view:function(){for(var e,t=this.options.items,i=this.options.value||"",n=0,o=t.length;n<o;n++)if((e=t[n]).value===i){i=e.text;break}return a("<label>"+i+"</label>")},getValue:function(){var t,i=this,e=this.elem;return e.find("input:radio").length?(e.find("input:radio").each(function(e){if(this.checked)return t=i.options.items[e].value,!1}),t):this.options.value},createItems:function(e,t){for(var i,n=[],o=t?"":'disabled="disabled" readonly="readonly" ',a=0,r=e.length;a<r;a++)i=e[a],n.push(['<div class="formbuilder-control-checkbox">','<input name="',this.options.name,'" class="" id="" value="',i.value,'" type="radio" ',o,i.selected?'checked="checked"':"",">",'<label for="">',i.text,"</label></div>"].join(""));return n.join("")},className:"formbuilder-control-radiogroup",options:{required:!1,name:"",value:"",className:"",items:[{text:"option",value:"option"}]},property:{value:{hidden:!0},name:{text:"name",type:"textbox",update:function(e){this.elem.find("input:radio").attr("name",e)}},"font-family":{update:function(e){this.elem.find("label").css("font-family",e)}},"font-size":{update:function(e){this.elem.find("label").css("font-size",e+"px")}},"font-weight":{text:"font-weight",type:"bool",source:{text:"font-weight",image:"font-weight.png"},update:function(e){e=e?"bolder":"normal";this.elem.find("label").css("font-weight",e)}},items:{type:"options",multi:!1,excludePattern:["applying","view"],updateInLoad:!1,update:function(e){this.elem.html(this.createItems(e)),this.updateProperties()}},"text-align":{}}})}(jQuery),function(y){"use strict";y.formbuilder.toolbox.add("select",{title:"select",icon:"select.svg",className:"formbuilder-control-select",getOptionsItems:function(e,t,i,n){let o=[],a=i;return y.ajax({url:e,type:t,data:JSON.stringify(n),dataType:"json",async:!1,contentType:"application/json",beforeSend:function(e){e.setRequestHeader("Authorization",a)},success:function(e){200==e.code&&(o=e.data)},error:function(e){console.log(e)}}),o},applying:function(){var e=this.options,t=e.id,i=e.items,n=e.value,o=e.filterable?"":"readonly",a=new Array,r=this,l=this.$content,s=this.source.url,c=this.source.method,d=this.source.token,u=this.builder.options.language,p=("zhs"!==u&&"zh-CN"!==u||(u="zhs"),this.sourceParams()),u=Object.assign({lang:u},p);if(0===i.length&&(i=this.getOptionsItems(s,c,d,u),e.items=i),i&&0<i.length)for(var h=0;h<i.length;h++){var m,f=!1;if((m=n.split(";"))!=[]){for(var g=0;g<m.length;g++)if(m[g]==i[h].value){f=!0;break}}else""!=n&&(f=n==i[h].value);a[h]={Value:i[h].value,Text:""===i[h].text?" ":i[h].text,Selected:f}}var p=y('<div id="'+t+'_container" class="input-group hoteam-multiSelect-container"></div>'),b=y('<input type="text" id="'+t+'_dropdown" class="form-control input-sm '+o+'" style="padding-right: 20px;" autocomplete="off"'+o+">"),s=(y('<div class="dropdown-clear" style="position: absolute;top: 6px;right: 30px;cursor: pointer;"></div>'),y('<div class="caret" style="position: absolute;top: 8px;right: 10px;cursor: pointer;"></div>')),c=(y('<div class="input-group-btn"><div type="button" class="btn btn-default dropdown-toggle btn-sm" data-toggle="dropdown"><span class="caret"></span></div></div>'),p.append(b),p.append(s),{data:a,opt:e,$content:l});return c.events={change:function({text:e,value:t}){r.options.value=t,r.options.text=e}},b.selectpicker(c),s.on("click",function(){b.selectpicker("clear")}),b.on("keyup",function(e){var t=y(this),i=(o=t.val()).split(";"),n=0,o=i[i.length-1],i=y("#"+t.attr("bomenuid"));i.find(".dropdown-select-li").each(function(e){var t=y(this),i=t.find("a").attr("title");o&&-1===i.indexOf(o)?t.hide():(t.show(),n++)}),0===n?i.hide():i.show(),t.selectpicker("show")}),p},source:{url:"/api/system/modelForm/getModelEnumList",method:"POST"},sourceParams:function(){return{}},updateValue:function(){var e=this.elem.find("input");0!=e.length&&(this.options.value==e.attr("val")&&this.options.text==e.val()||(this.options.value=e.attr("val"),this.options.text=e.val()),e.selectpicker("destroy"))},valueChange(){var e,r=this.options.value;!r||(e=this.options["effect-position"])&&0<e.length&&this.builder.workspace.getEffectCell(this.options,e).controls.forEach(e=>{var t=this.builder.options.language,i=("zhs"!==t&&"zh-CN"!==t||(t="zhs"),e.sourceParams()),t=Object.assign({lang:t},i,{filterValue:r}),i=this.source.token,n=this.source.url,o=this.source.method,a=(e.options.items=e?.getOptionsItems(n,o,i,t),e.options.value),n=(e.options.text,e.options.items.find(e=>e.value==a));""==n||null==n&&0<e.options.items.length?(e.options.text=e.options.items[0].text,e.options.value=e.options.items[0].value,e.elem.text(e.options.items[0].text),e.elem.html(e.options.items[0].text),e.updateProperties()):(""==n||null==n&&0==e.options.items.length)&&(e.options.text="",e.options.value="",e.elem.text(""),e.elem.html(""))})},view:function(){this.options.value;var e=this.options.text;return this._renderViewLabel(e)},options:{required:!1,name:"",width:"100%",collapseTags:!1,choice:"simple",filterable:!0,autocomplete:!1,disabled:!1,value:"",items:[]},property:{value:{text:"value",excludePattern:["view"],type:"textbox",updateInLoad:!1,source:{},update:function(e){this._updateOptions({value:e})}},items:{type:"options",multi:!1,hidden:!0,excludePattern:["applying","view"],updateInLoad:!1,update:function(e){this._updateOptions({items:e})}},choice:{text:"Multiplechoice",type:"buttons",updateInLoad:!0,source:[{name:"simple",text:"simple",image:"radio-group.svg",selected:!1},{name:"multiple",text:"multiple",image:"check.png",selected:!1}],update:function(e){this._updateOptions({multiple:e="multiple"===e})}},filterable:{text:"filterable",type:"bool",updateInLoad:!1,source:{text:"filterable",image:"enable-click-text.svg"},update:function(e){this.options.allowCreate?this.options.filterable=!0:this._updateOptions({filterable:e})}},"effect-position":{text:"selectCascade",type:"options",hideSelect:!0,elems:[{name:"position",placeholder:"positionTip"}],excludePattern:["applying","view"],updateInLoad:!1,update:function(e){this._updateOptions({"effect-position":e})}}},getValue:function(){return this.options.value},_renderViewLabel:function(e){return y("<label class='forbuilder-control-view-lable'>"+e+"</label>")}}),y.fn.selectpicker=function(e){return"string"==typeof e&&t[e]?t[e].apply(this,Array.prototype.slice.call(arguments,1)):"object"!=typeof e&&e?void 0:t.init.apply(this,arguments)};var t={opts:{onchange:null},init:function(e){var t=this;y(this).attr("bomenuid")&&y(this).selectpicker("destroy");var i=function(e){for(var t="",i=1;i<=32;i++){var n=Math.floor(16*Math.random()).toString(16).toUpperCase();t+=n,e||8!=i&&12!=i&&16!=i&&20!=i||(t+="-")}return t}()+"bottom";y(this).attr("bomenuid",i).data("o",e);var n,o=e.data,a=t,r=e,e='<ul class="dropdown-menu" id="'+i+'" role="menu"></ul>',l=r||{},s=l.opt.multiple,c=r.$content.width();if(n=y(e).attr("id",i).css({width:c,"z-index":"999999",display:"none",padding:"0","max-height":"300px","overflow-y":"auto"}),y("body").append(n),l.showSelectAll){for(var d=!0,u=0,p=o.length;u<p;u++)if(!o[u].Selected){d=!1;break}o.unshift({text:l.selectAllText||"",type:"selectAll",value:"",Selected:d})}for(var h=0;h<o.length;h++){var m,f=o[h],g=s?'<span class="basesprite"></span>':"",g='<li style="height:30px;line-height:30px;" class="dropdown-select-li '+("selectAll"==f.type?"selectAll":"")+'"><a style="padding-right:30px;position:relative" title="'+(f.text||f.Text)+'"><span val="'+(f.value||f.Value)+'">'+(f.text||f.Text)+"</span>"+g+"</a></li>",g=y(g);(f.Selected||f.selected)&&g.addClass("selected"),s?(m=null==f.Selected?f.selected?"block":"none":f.Selected?"block":"none",(f.Selected||f.selected)&&g.addClass("selected"),"selectAll"==f.type&&(l.$selectAll=g),g.find(".basesprite").css({position:"absolute",right:"10px",top:"4px",display:m}),g.on("mousedown",{me:a,opt:l},function(e){var t,i,n=e.data.me,e=e.data.opt,o=e.$selectAll,a=y(this);n.allowHide=!1,o&&(i=(t=a.parent()).children()),a.hasClass("selectAll")?a.hasClass("selected")?(i.find(".basesprite").css("display","none"),i.removeClass("selected")):(i.find(".basesprite").css("display","block"),i.addClass("selected")):a.hasClass("selected")?(a.find(".basesprite").css("display","none"),a.removeClass("selected"),o&&(o.removeClass("selected"),o.find(".basesprite").css("display","none"))):(a.find(".basesprite").css("display","block"),a.addClass("selected"),o&&i.length-t.children(".selected").length==1&&(o.addClass("selected"),o.find(".basesprite").css("display","block"))),b(n,e),r.onchange&&r.onchange.call(n,{text:n.val(),value:n.attr("val")})})):g.on("mousedown",{me:a,opt:l},function(e){var t=y(this);n.children().removeClass("selected"),t.hasClass("selected")||t.addClass("selected"),v(a),y(a).selectpicker("hide")}),n.append(g)}function b(e,t){for(var i,n=y(e).attr("bomenuid"),o=y("#"+n).children(),a="",r="",l=t.showSelectAll?1:0;l<o.length;l++)"none"!=y(o[l]).find(".basesprite").css("display")&&(a+=(i=y(o[l]).find("span:first")).attr("val")+";",r+=i.text()+";");r=r&&r.substring(0,r.length-1),a=a&&a.substring(0,a.length-1),y(e).attr("val",a),y(e).val(r)}function v(e){for(var t,i=y(e).attr("bomenuid"),n="",o="",a=y("#"+i).children(),n="",o="",r=0;r<a.length;r++)y(a[r]).hasClass("selected")&&(n=(t=y(a[r]).find("span")).attr("val"),o=t.text());y(e).attr("val",n),y(e).val(o)}(s?b:v)(a,l),n.on("mouseleave",function(){a.allowHide=!0,y(a).focus(),r?.events?.change({value:y(a).attr("val"),text:y(a).val()})}),n.on("mousedown",function(){a.allowHide=!1}),y(this).on("click",function(){y(this).selectpicker("show"),y(this).focus()}).on("blur",t,function(e){0==e.data.allowHide?e.data.allowHide=!0:y(this).selectpicker("hide")}),y(t).parent().find(".btn").on("mouseup",t,function(e){setTimeout(function(){if("disabled"==y(t).nextAll(".input-group-btn").find(".btn").attr("disabled"))return!1;y(t).selectpicker("show"),y("#"+y(t).attr("bomenuid")).find(".dropdown-select-li").show(),y(t).focus()})})},loadData:function(e){y(this).selectpicker("destroy");var t=y(this).data("o");delete t.$selectAll,y(this).selectpicker(y.extend(t,{data:e}))},show:function(){var e,t,i=y(this).attr("bomenuid"),i=y("#"+i);"none"==i.css("display")&&(e=y(this).offset(),(y(window).height()-y(this).offset().top+y(document).scrollTop()-y(this).outerHeight()-2<(t=i.height())?i.css("left",e.left).css("top",e.top-t-16):i.css("left",e.left).css("top",e.top+y(this).outerHeight())).css("display","block"))},hide:function(){var e=y(this).attr("bomenuid");y("#"+e).css("display","none")},getSelectedValue:function(){var e=y(this).attr("val");return e=";"===e[e.length-1]?e.substring(0,e.length-1):e},getSelectedText:function(){var e=y(this).val();return e=";"===e[e.length-1]?e.substring(0,e.length-1):e},setSelectedByValue:function(e){if(e){var t=e.split(";"),e=y(this),i=e.data("o"),e=e.attr("bomenuid"),n=y("#"+e).children(),o="",a="",r=0;n.removeClass("selected").find(".basesprite").css("display","none");for(var l=0;l<t.length;l++)for(var s=0;s<n.length;s++){var c=y(n[s]),d=c.find("span:first"),u=c.find("span:last");t[l]==d.attr("val")&&(o+=d.attr("val")+";",a+=d.text()+";",u.css("display","block"),c.addClass("selected"),r++)}i.$selectAll&&n.length-r==1&&i.$selectAll.addClass("selected").find(".basesprite").css("display","block"),a=a&&a.substring(0,a.length-1),o=o&&o.substring(0,o.length-1),y(this).attr("val",o),y(this).val(a)}},clear:function(){y(this).attr("val","").val("");var e=y(this).attr("bomenuid"),e=y("#"+e).children();e.removeClass("selected"),e.find(".basesprite").css("display","none")},showSelectAll:function(){y(this).selectpicker("destroy");var e=y(this).data("o");y(this).selectpicker(y.extend(e,{showSelectAll:!0}))},resize:function(){var e=y(this).css("width"),t=y(this).attr("bomenuid");y("#"+t).css("width",e)},disable:function(){y(this).attr("disabled",!0).nextAll(".input-group-btn").find(".btn").attr("disabled",!0)},enable:function(){y(this).attr("disabled",!1).nextAll(".input-group-btn").find(".btn").attr("disabled",!1)},destroy:function(){var e=y(this).attr("bomenuid");y(this).off("click blur"),y(this).nextAll(".input-group-btn").find(".btn").off(),y("#"+e).remove()}}}(jQuery),function(o){"use strict";o.formbuilder.toolbox.add("textarea",{title:"textarea",icon:"textarea.svg",applying:function(){var t=o('<textarea style="resize: none;" />').attr({name:this.options.name,placeholder:this.options.placeholder}).addClass(this.className).val(this.options.value),i=null,n=this;return t.on("input",function(e){i&&clearTimeout(i),i=setTimeout(()=>{var e=t.val();n.options.value=e,i=null},500)}).on("mousedown",function(e){e.stopPropagation()}),t},view:function(){var e=(e=null==(e=this.options.value)?"":e).replace(/\n/g,"<br/>");return o(`<label style="overflow:auto">${e}</label>`)},className:"formbuilder-control-textarea",options:{name:"",label:"",value:"",rows:1,className:""},getValue:function(){var e=this.elem;return"TEXTAREA"==e.prop("nodeName")?e.val()||"":this.options.value},property:{value:{type:"textarea",hidden:!0,excludePattern:["view"],update:function(e){this.elem.val(e)}},text:{excludePattern:["design","view"],updateInLoad:!1,update:function(e){this.elem.val(e)}},rows:{type:"textbox",update:function(e){this.elem.attr("rows",e)}},"text-align":{update:function(e){({view:function(e){this.container.css("text-align",e)},applying:function(e){this.container.css("text-align",e)},design:function(e){this.elem.css("text-align",e)}})[this.builder.options.pattern].call(this,e)}},cascade:{hidden:!1}}})}(jQuery),function(e){"use strict";e.formbuilder.toolbox.add("textbox",{title:"textbox",icon:"text.svg",applying:function(){let t=e('<input type="text" />').attr({name:this.options.name,placeholder:this.options.placeholder}).addClass(this.className).val(this.options.value),i=null,n=this;return t.on("input",function(e){i&&clearTimeout(i),i=setTimeout(()=>{var e=t.val();n.options.value=e,i=null},500)}).on("mousedown",function(e){e.stopPropagation()}),t},getValue:function(){var e=this.elem;return"INPUT"==e.prop("nodeName")?e.val()||"":this.options.value},className:"formbuilder-control-textbox",options:{label:"",required:!1,placeholder:"",name:"",value:"",className:"","text-align":"left"},property:{name:{text:"name",hidden:!0,type:"textbox",update:function(e){this.elem.attr("name",e)}},defaultValue:{hidden:!1},placeholder:{text:"placeholder",type:"textbox",update:function(e){this.elem.attr("placeholder",e)}},value:{hidden:!0},text:{excludePattern:["design","view"],updateInLoad:!1,update:function(e){e=(e||"").replace(/\n/g," "),this.elem.val(e)}},"text-align":{applyingUpdate:function(e){this.container.css("text-align",e)},viewUpdate:function(e){this.container.css("text-align",e)}},cascade:{hidden:!1}}})}(jQuery),function(t){"use strict";t.formbuilder.toolbox.add("contenteditable",{title:"contenteditable",icon:"contenteditable.svg",applying:function(){var e="ActiveXObject"in window||window.ActiveXObject?"true":"plaintext-only",e=t("<div contenteditable='plaintext-only' style='user-modify: read-write-plaintext-only'></div>").attr({name:this.options.name,placeholder:this.options.placeholder,contenteditable:e}).addClass(this.className);return!!("ActiveXObject"in window||window.ActiveXObject)&&e.on("beforepaste",function(e){var t=window.clipboardData.getData("text");window.clipboardData.setData("Text",t)}),e},view:function(){var e=(e=null==(e=this.options.value)?"":e).replace(/\n/g,"<p/>");return t("<label class='"+this.className+"-view'>"+e+"</label>")},className:"formbuilder-control-contenteditable",options:{name:"",label:"",value:"",className:""},htmlEncode:function(e){return"number"==typeof e?e:(e=e||"",0==(e+="").length?"":(e=(e=(e=(e=(e=e.replace(/&/g,"&")).replace(/</g,"<")).replace(/>/g,">")).replace(/ /g," ")).replace(/'/g,"'")).replace(/"/g,"""))},htmlDecode:function(e){var t=e||"";return 0==(t+="").length?"":(t=(t=(t=(t=(t=e.replace(/&/g,"&")).replace(/</g,"<")).replace(/>/g,">")).replace(/ /g," ")).replace(/'/g,"'")).replace(/"/g,'"')},textTohtml:function(e){var t,i="";if(e)for(var n=0,o=(e=e.split(/\n/g)).length;n<o;n++)i+="<div>"+((t=e[n])?this.htmlEncode(t):" ")+"</div>";return i},htmlToText:function(e){var t,e=e||"";return(window.ActiveXObject||"ActiveXObject"in window)&&e.replace(/<div>((<br>)|(<br\/>))<\/div>/gi,"<div></div>").replace(/<p>((<br>)|(<br\/>))<\/p>/gi,"<p></p>"),"\n"===(e=(e=(t=e.match(/(<p>[\s\S]*?<\/p>)|(<div>[\s\S]*?<\/div>)/gi))?t.join("\n"):e).replace(/(<br>)|(<br\/>)/gi,"\n").replace(/ /gi," ").replace(/(<p>)|(<\/p>)|(<div>)|(<\/div>)/gi,""))[e.length-1]&&(e=e.slice(0,-1)),e=this.htmlDecode(e)},getValue:function(){var e=this.elem.html()||"";return this.htmlToText(e)},property:{value:{type:"textarea",excludePattern:["view"]},text:{excludePattern:["design","view"],updateInLoad:!1,update:function(e){e=this.textTohtml(e);this.elem.html(e)}},"text-align":{update:function(e){({view:function(e){this.container.css("text-align",e)},applying:function(e){this.container.css("text-align",e)},design:function(e){this.elem.css("text-align",e)}})[this.builder.options.pattern].call(this,e)}},color:{text:"color",type:"colorpicker",update:function(e){this.container.css("color",e)}},width:{hidden:!0,order:1002,update:function(e){this.container.outerWidth("100%")}}}})}(jQuery),function(m){"use strict";m.formbuilder.toolbox.add("editbutton",{title:"editbutton",icon:"enable-click-text.svg",applying:function(){var u=this.builder.workspace,p=this.options,e=m('<div class="editbutton-input"></div>'),t=m('<div class="editbutton-input-group"></div>'),i=m('<span class="editbutton-input-group-clear"></span>'),n=m('<div class="editbutton-more"><div class="editbutton-b-gray-more"></div></div>'),h=m("<input />").attr({type:this.options.type,name:this.options.name,readonly:!0,value:p.value}).addClass(this.className).val(this.options.text);return t.append(h),t.append(i),t.append(n),e.append(t),i.on("click",function(e){e.stopPropagation(),h.val("").attr({value:""}),p.text="",p.value=""}),n.find(".editbutton-b-gray-more").css({background:"url(../build/images/"+this.icon+")","background-size":"100% 100%"}),e.on("click",function(e){var t=p["effect-position"],c=u.getEffectCell(p,t),i=(c.isSubCell,c.row),d=0<t?.length,t={options:c.options,row:i,autoQueryAllFields:d,resolve:function(e){for(var t,i,n,o=c.originRowObj,a=p.type,r=[],l=0,s=e.length;l<s;l++)(i=o[n=(t=e[l]).type])&&(n==a?(p.value=e[l].value,p.text=e[l].text,h.val(p.text)):(m.extend(i,t),r.push(i)));d&&0<r.length&&u.updateCellsData(r)}},i=u.events?.customControlClick;i&&i(t)}),e},view:function(){var e=this.options.text;return m("<label class='forbuilder-control-view-lable'>"+(e=null!=e&&""!==e?e:" ")+"</label>")},getValue:function(){var e=this.elem.find("input");return 0==e.length?this.options.value:e.val()},className:"formbuilder-control-editbutton-input",options:{name:"",label:"",value:"",items:function(){},className:""},property:{"font-size":{text:"font-size",type:"combox",after:"vertical-align",source:m.formbuilder["FONT-SIZE"],conver:function(e){return e=e||""},applyingUpdate:function(e){this.elem.css("font-size",e+"px"),this.elem.find("input").css("font-size",e+"px")}},"effect-position":{text:"effect-position",type:"options",hideSelect:!0,elems:[{name:"position",placeholder:"positionTip"},{name:"db-table-field",placeholder:"dbTableName"}],excludePattern:["applying","view"],updateInLoad:!1,update:function(e){this._updateOptions({"effect-position":e})}},url:{hidden:!0},defaultValue:{hidden:!1}},"text-align":{hidden:!0}})}(jQuery),function(b){"use strict";b.formbuilder.toolbox._table={type:"_table",title:"table",icon:"icon-table.svg",filters:{tableIndex:"td.formbuilder-table-cells-all-index",rowIndex:"td.formbuilder-table-row-index",columnIndex:"td.formbuilder-table-column-index,col.formbuilder-table-column-index",row:"tr.formbuilder-table-row",column:"td.formbuilder-table-cell",indexText:"formbuilder-table-index-text"},id:"layout",elem:null,guid:null,contextmenu:"cells",defaultOptions:{rows:[],cells:[],columns:[],controls:[],table:{}},options:{type:"_table"},propertyField:{table:{width:"100%",height:"100%",rows:16,columns:10,className:"","border-style":"border-solid","border-color":"#E1E1E1",paging:!1,center:!0,"print-size":""},row:{height:32,x:null,y:-1},column:{width:120,x:-1,y:null},cells:{},cell:{rowspan:1,colspan:1,"background-color":"","border-style":"","border-color":"",x:null,y:null,x1:null,y1:null}},propertyMap:{table:{map:"table",order:1},row:{map:"rows",position:{x:null,y:-1},order:2},column:{map:"columns",position:{x:-1,y:null},order:3},cell:{map:"cells",position:{x:null,y:null},order:4}},property:{table:{width:{hidden:!0,text:"table-width",type:"textbox",group:"table",excludePattern:null,updateInLoad:!0,update:function(e){this.elem.find("."+this.className.tbodyContent).css("width",e)},conver:function(e){return!isNaN(e)&&e?Number(e):e}},height:{text:"table-height",type:"textbox",group:"table",hidden:!0,updateInLoad:!0,conver:function(e){return!isNaN(e)&&e?Number(e):e},update:function(e){this.elem.css("height",e)}},rows:{text:"table-rows",type:"textbox",group:"table",updateInLoad:!1,checking:function(e){return!isNaN(e)},conver:function(e){return parseInt(e)},update:function(e){this.workspace.renderGrid()}},columns:{text:"table-columns",type:"textbox",group:"table",updateInLoad:!1,after:["center"],checking:function(e){return!isNaN(e)},conver:function(e){return parseInt(e)},update:function(e){this.workspace.renderGrid()}},"border-style":{text:"table-border",type:"buttons",group:"table",updateInLoad:!0,source:b.formbuilder["BORDER-STYLE"].slice(0,2),"extend-params":{rows:2,multiple:!0},update:function(e){e=this.className.table+" border-style--"+e;this.elem.attr("class",e)}},"border-color":{text:"border-color",type:"colorpicker",updateInLoad:!0,source:{defaultValue:"#ccc"},group:"table-cell",update:function(e){var t="#"+this.guid+" td."+this.className.cell;b.formbuilder.createStyle(this.elem,this.guid+"-border-color",t,{"border-color":e})}},paging:{text:"paging",type:"bool",hidden:!0,updateInLoad:!1,source:{text:"paging",image:"paging.png"},update:function(e){}},center:{hidden:!0,text:"table-center",type:"bool",source:{text:"center",image:"center.png"},order:2001,after:["print-size"],update:function(e){e=!1===e?0:"auto";this.elem.find("."+this.className.tbodyContent).css("margin",e)}},"print-size":{text:"print-size",type:"buttons",group:"table",order:2002,updateInLoad:!0,source:b.formbuilder["PRINT-SIZE"],designUpdate:function(e,t,i){var n,o,a=i["print-direction"]||"vertical",r={A3:{width:4*297,height:4*420},A4:{width:4*210,height:4*297},A5:{width:4*210,height:4*148},custom1:{width:4*210,height:4*100}},l=32,s=32,c=0,d=this.elem.find(".formbuilder-print-size");e&&"print-none"!==e?(d.show(),n=this.elem.find("."+this.className.tbodyContainer),o=this.elem.find("."+this.className.tbodyContent),0===d.length&&(d=b(" <div class='formbuilder-print-size'> <div class='formbuilder-print-size-top'></div> <div class='formbuilder-print-size-bottom'></div> <div class='formbuilder-print-size-left'></div> <div class='formbuilder-print-size-right'></div> </div>"),n.append(d)),r=r[e],"horizontal"===a&&(r={width:(e=r).height,height:e.width}),i.center&&(c=(c=(n.width()-o.width())/2)<0?0:Math.ceil(c)),d.find(".formbuilder-print-size-top").css({width:r.width,top:l,left:s+c}),d.find(".formbuilder-print-size-bottom").css({width:r.width,top:r.height+l,left:s+c}),d.find(".formbuilder-print-size-left").css({height:r.height,top:l,left:s+c}),d.find(".formbuilder-print-size-right").css({height:r.height,top:l,left:r.width+s+c})):d.hide()}},"print-direction":{text:"print-direction",type:"buttons",group:"table",updateInLoad:!1,after:["print-size"],source:b.formbuilder["PRINT-DIRECTION"],designUpdate:function(e,t,i){}}},row:{height:{text:"table-row-height",type:"textbox",group:"table-row",updateInLoad:!1,checking:function(e){return"auto"===e||!isNaN(e)&&("number"==typeof(e=Number(e))&&1<=e)},conver:function(e){return e=isNaN(e)?e:e&&Number(e)},update:function(n,e,t,i){var o=b.formbuilder.getTimestamp(),a=this,e=(i=i||this.getRowSelectedCells(e.x)).$index,r=i.cells;i.$row.css("height",n),e&&(e.css("height",n),e.find(">div:first").css({height:n,"line-height":"auto"===n?"normal":n+"px",overflow:"hidden"})),_.each(r,function(e){var t,e=b(e),i=a.getPosition(e),i=a.findObj(a.options.cells,i.x,i.y,b.formbuilder.DATATYPE.CELLS);e.attr("data-height",n).css("height",n),t=e.find("."+a.workspace.className.relateProperty),a.updateProperties(t,"height-container",void 0,o),b.formbuilder.updatePropertiesByOptions(a.pattern,a,["border-style"],i,[e])})},afterDesignUpdate:function(e,t,i,n){this.resizeRangeHighlight(this.workspace.findRowIndex(t.x),t.x,"row")}}},column:{width:{text:"table-column-width",type:"textbox",group:"table-column",updateInLoad:!1,checking:function(e){return"string"==typeof e&&(e=e.replace(/%/,"")),"number"==typeof(e=isNaN(e)?e:Number(e))&&1<=e},conver:function(e){return!isNaN(e)&&e?Number(e):e},update:function(e,t={},i,n){let o="number"==typeof e?e:e.replace("%",""),a=this,r;(n=n||this.workspace.findColumnIndex(t.y))&&n.css("width",o),r=this.getColumnSelectedCells(t.y).cells,_.each(r,function(e){var e=b(e),t=a.getPosition(e),t=a.findObj(a.options.cells,t.x,t.y);b.formbuilder.updatePropertiesByOptions(a.pattern,a,["border-style"],t,[e])})},afterDesignUpdate:function(e,t,i,n){this.resizeRangeHighlight(this.workspace.findColumnIndex(t.y),t.y,"column")}}},cell:{rowspan:{text:"table-cell-rowspan",type:"textbox",group:"table-cell",after:["border-style"],order:2001,checking:function(e,t){var i=this.options.table.rows;return!isNaN(e)&&!!("number"==typeof(e=Number(e))&&/^[1-9]([0-9]*)?$/.test(e)&&t.x+e<=i)},conver:function(e){return!isNaN(e)&&e?Math.floor(Number(e)):1},update:function(e,t,i){var{x:n,y:o}=t,a=this.options.table["rows"],o=this.findCell(n,o);o&&(a<n+(e=parseInt(e)||1)-1&&(i.rowspan=e=a-n+1),i={rowspan:parseInt(o.attr("rowspan"))||1,colspan:parseInt(o.attr("colspan"))||1},a={rowspan:parseInt(e)||1,colspan:parseInt(o.attr("colspan"))||1},_.isEqual(i,a)||(o.attr({colspan:a.colspan,rowspan:a.rowspan}),this.updateCell(t,i,a)))}},colspan:{text:"table-cell-colspan",type:"textbox",group:"table-cell",order:2002,after:["border-style"],checking:function(e,t){var i=this.options.table.columns;return!isNaN(e)&&!!("number"==typeof(e=Number(e))&&/^[1-9]([0-9]*)?$/.test(e)&&t.y+e<=i)},conver:function(e){return!isNaN(e)&&e?Math.floor(Number(e)):1},update:function(e,t,i){var{x:n,y:o}=t,a=this.options.table["columns"],n=this.findCell(n,o);n&&(a<o+(e=parseInt(e)||1)-1&&(i.colspan=e=a-o+1),i={rowspan:parseInt(n.attr("rowspan"))||1,colspan:parseInt(n.attr("colspan"))||1},a={rowspan:parseInt(n.attr("rowspan"))||1,colspan:parseInt(e)||1},_.isEqual(i,a)||(n.attr({colspan:a.colspan,rowspan:a.rowspan}),this.updateCell(t,i,a)))}},"border-style":{text:"cell-border-style",type:"buttons",group:"table-cell",order:2002,timestamp:!0,updateInLoad:!0,after:["oblique-line"],source:b.formbuilder["BORDER-STYLE"].slice(0,2),timestampConver:function(e,t,i){var n,o=(i["border-style"]||{}).value||"border-solid",a=e;if(e instanceof Object){if(e.value instanceof Array)return e.value;a=e.value}return this.isDefaultBorderStyle(a,i)?a:a||o?(a=1===(i=a.split("--")).length?[a,a,a,a]:(o=o instanceof Array?o:[o,o,o,o],n=i[0],o[{top:0,right:1,bottom:2,left:3}[i[1]]]=n,o),e instanceof Object?e.value=a:e=a,e):null},conver:function(e){var t;return e&&e.timestamp&&(t=e.value)?("string"==typeof t&&(e.value=[t,t,t,t]),e):null},update:function(e,t,i){var n=t.x,o=t.y,n=this.findCell(n,o),o=!1;i["border-style"]&&0<i["border-style"]?.value?.length&&(o=i["border-style"].value.every(e=>"border-none")),i["border-color"]&&!o&&(i["border-style"]={value:["border-solid","border-solid","border-solid","border-solid"]}),this.renderBorder(n,t,i)},activeValueConver(i,e){var e=e.options.table["border-style"]||e.propertyField.table["border-style"],n=this.source||[];if(null==i||""==i)return e;"object"==typeof i&&(i=i["value"]);for(let e=0,t=n.length;e<t;e++){let t=n[e]["name"];if(i instanceof Array){if(!i.find(e=>e!=t))return t}else if(i==t)return t}return i}},"border-color":{text:"border-color",type:"colorpicker",updateInLoad:!1,timestamp:!0,source:{defaultValue:"#ccc"},group:"table-cell",after:["border-style"],update:function(e,t,i){},timestampConver:function(e,t,i){var i=i["border-color"]?.value,n=e;return(n=e instanceof Object?e.value:n)||i?n:null}},"border-position":{text:"cell-border-position",type:"buttons",updateInLoad:!1,group:"table-cell",hidden:!0,source:b.formbuilder["BORDER-POSITION"],update:function(e,t,i){}},"background-color":{text:"background-color",type:"colorpicker",source:{defaultValue:"#fff"},group:"table-cell",after:["border-style"],update:function(e,t){!e||(t=this.findCell(t.x,t.y))&&t.css("background-color",e)}},"oblique-line":{text:"obliqueline",type:"buttons",group:"table-cell",updateInLoad:!0,order:2003,defaultValue:"#ccc",source:b.formbuilder["OBLIQUELINE-STYLE"],update:function(u,p,h){if(u){let e,t,i,n,o,a,r=h["border-color"]?.value||h["border-color"],l,s="obliqueline-none",c="obliqueline-left-one",d=!0;(e=this.findCell(p.x,p.y))&&(t=e.find("."+this.className.obliquelineContainer),u=u||s,0<t.length&&t.empty(),u!==s&&(0===t.length&&(d=!1,t=b("<div class='"+this.className.obliquelineContainer+"'></div>")),u===c&&(i=b("<div class='"+this.className.obliqueline+"'></div>"),n=e.width()+2,o=e.height()+2,a=Math.sqrt(Math.pow(n,2)+Math.pow(o,2)),l=Math.atan(o/n)/(Math.PI/180),i.css({width:a+"px",top:0,left:0,"background-color":r??"",transform:"rotate("+l+"deg)","transform-origin":"top left"})),i.appendTo(t),d||t.appendTo(e)))}}}}},workspace:null,getLocalText:function(){return(b.formbuilder.language[this.language]||b.formbuilder.language["zh-CN"]).toolbox[this.title]||this.title||""},getLocalLanguage:function(e){return(b.formbuilder.language[this.language]||b.formbuilder.language["zh-CN"]).table[e]||""},update:function(){var e=this.container.find(">div");e.html(""),this.elem=this.render(),e.append(this.elem),this.cacheRangeElements()},bindEvent:function(){this["bind"+_.upperFirst(this.pattern)+"Event"]()},bindDesignEvent:function(){this.bindSelectCells(),this.updateDrakeContainers(),this.bindResizeIndexCell()},bindApplyingEvent:function(){this.bindDatasetRowEvent(),this.bindActiveCell(),this.getBuilderOptions().enable.applying["event-select-cells"]&&this.bindApplyingSelectCells(),this.bindScroll()},bindViewEvent:function(){this.bindScroll()},className:{table:"formbuilder-table",row:"formbuilder-table-row",cell:"formbuilder-table-cell",cellActive:"formbuilder-table-cell-active",cellActiveTarget:"formbuilder-table-cell-active-target",cellHover:"formbuilder-table-cell-hover",indexAllCell:"formbuilder-table-cells-all-index",indexRow:"formbuilder-table-row-index",indexColumn:"formbuilder-table-column-index",indexCell:"formbuilder-table-cell-index",indexText:"formbuilder-table-index-text",indexCellActive:"formbuilder-table-cell-index-active",extendCell:"formbuilder-table-cell-extend",cellSelect:"formbuilder-table-cell-selected",cellSelectStart:"formbuilder-table-cell-selected-start",cellSelectEnd:"formbuilder-table-cell-selected-end",colResize:"formbuilder-table-cell-index-col-resize",rowResize:"formbuilder-table-cell-index-row-resize",resizing:"formbuilder-table-cell-index-resizing",colIndexResizing:"formbuilder-table-cell-index-col-resizing",rowIndexResizing:"formbuilder-table-cell-index-row-resizing",borderSolid:"formbuilder-table-border-solid",borderSolidHeavy:"formbuilder-table-border-solid-heavy",borderDashed:"formbuilder-table-border-dashed",borderNone:"formbuilder-table-border-none",controlCut:"formbuilder-table-cell-cut",obliquelineContainer:"formbuilder-table-cell-obliqueline-conatiner",obliqueline:"formbuilder-table-cell-obliqueline",buttons:"formbuilder-dataset-buttons",button:"formbuilder-table-button",datasetRemoveButton:"formbuilder-dataset-button-remove",datasetInsertButton:"formbuilder-dataset-button-insert",selectedRange:"frombuilder-table-select-range",selectedRangeBorderH:"frombuilder-table-select-range-border-h",selectedRangeBorderV:"frombuilder-table-select-range-border-v",selectedRangeBorderLeft:"frombuilder-table-select-range-border-left",selectedRangeBorderRight:"frombuilder-table-select-range-border-right",selectedRangeBorderTop:"frombuilder-table-select-range-border-top",selectedRangeBorderBottom:"frombuilder-table-select-range-border-bottom",selectedRangeRow:"frombuilder-table-select-range-row",selectedRangeCell:"frombuilder-table-select-range-cell",tbodyContainer:"frombuilder-table-tbody-container",tbodyContent:"frombuilder-table-tbody-content",cellBorderContainer:"frombuilder-table-cell-border-container",cellBorder:"frombuilder-table-cell-border",cellBorderLeft:"frombuilder-table-cell-border-left",cellBorderRight:"frombuilder-table-cell-border-right",cellBorderTop:"frombuilder-table-cell-border-top",cellBorderBottom:"frombuilder-table-cell-border-bottom"},coverElem:null,rangeElem:{top:null,bottom:null,left:null,right:null},cache:{"cut-control":null,"copy-control":null,which:null,selected:{},startSelect:null,range:{left:0,top:0,width:0,height:0,firstWidth:0,firstHeight:0,endWidth:0,endHeight:0,row:{start:null,end:null},col:{start:null,end:null},position:null,$cell:null},max:{x:0,y:0},dataset:{selected:null,items:null},$activeCell:null},currentRender:{head:{row:null,column:null},body:{rows:function(t,e,i){var n=[],o=this,a=t.length,r=e.length;return i=i||1,_.each(_.range(i,(a||0)+i),function(e){n.push(o.currentRender.body.row.call(o,e,t[e-1],r))}),n.join("")},row:function(e,t,i,n){return this.template.row({className:{row:this.className.row},height:t.height,index:e,columns:this.currentRender.body.columns.call(this,i,e,t,n)})},columns:null,column:null}},template:{container:function(e){return['<div tabindex="0">'," <div class='",e.className.tbodyContainer,"' >"," <table"," class='",e.className.tbodyContent,"'> "," ",e.headHtml," ",e.bodyHtml," </table>"," <div class='",e.className.range,"'>"," <div class='",e.className.borderH," ",e.className.borderT,"' ></div>"," <div class='",e.className.borderH," ",e.className.borderB,"' ></div>"," <div class='",e.className.borderV," ",e.className.borderL,"' ></div>"," <div class='",e.className.borderV," ",e.className.borderR,"' ></div>"," </div>"," </div>","</div>"].join("")},row:function(e){return["<tr class='",e.className.row,"' height='",e.height,"' data-rowIndex='",e.index,"'>",e.columns,"</tr>"].join("")},design:{head:{row:function(e){return["<tr class='",e.className,"'>",e.columns,"<td/>","</tr>"].join("")},column:function(e){return["<td class='",e.className.td,"' ","width='",e.width,"' ","data-position='[",e.x,",",e.y,"]' ","data-type='",e.type,"' ","data-property-field='",e.field,"' >"," <div class='",e.className.text,"'>",e.index,"</div>"," <div class='",e.className.resize,"'></div>","</td > "].join("")}},body:{index:function(e){return["<td class='",e.className.td,"' ","style='height:",e.height,"px;' "," data-position='[",e.x,",",e.y,"]' ","data-type='",e.type,"' ","data-property-field='",e.field,"'>"," <div class='",e.className.text,"' style='overflow:hidden;height:",e.height,"px;line-height:",e.line_height,"'>",e.index,"</div>"," <div class='",e.className.resize,"'></div>","</td> "].join("")},column:function(e){return["<td class='",e.className.cell," ",e.className.enableDrop," ",e.className.relateProperty,"' data-height='",e.height,"' ","data-position='[",e.x,",",e.y,"]' ","data-type='",e.type,"' ","data-property-field='cell' ","data-contextmenu='cells' ",">","</td>"].join("")}}},applying:{head:{column:function(e){return["<col class='",e.className,"' data-position='[",e.x,",",e.y,"]' width='",e.width,"' ></col>"].join("")}},body:{column:function(e){return["<td class='",e.className.cell," ",e.className.relateProperty,"' ","data-height='",e.height,"'","data-position='[",e.x,",",e.y,"]' ","data-type='",e.type,"' ","data-property-field='cell' ","data-contextmenu='cells' ",">","</td>"].join("")}}}},renderTemplate:{design:{head:{row:function(e){return this.template.design.head.row({className:this.className.indexCell+" "+this.className.indexRow,columns:this.currentRender.head.columns.call(this,e)})},columns:function(t){var i=[],n=this,o=t.length;return i.push(n.currentRender.head.column.call(n,-1,-1,o,{})),_.each(_.range(1,(o||0)+1),function(e){i.push(n.currentRender.head.column.call(n,-1,e,o,t[e-1]))}),i.join("")},column:function(e,t,i,n){var o,a=t,r=this.className.indexCell+" "+this.className.indexColumn,l=this.workspace.className,s="";return-1===e&&-1===t?(a="",r=this.className.indexCell+" "+this.className.indexAllCell,o="table"):(o="column",s=this.className.colResize),r+=" "+l.relateProperty,this.template.design.head.column({className:{td:r,resize:i!==t?s:"",text:this.className.indexText},x:e,y:t,type:this.type,field:o,index:a,width:n.width||""})}},body:{columns:function(e,t,i,n){var o=[];if(e){o.push(this.currentRender.body.index.call(this,t,-1,i));for(var a=1;a<e+1;a++)_.isArray(n)&&!n[a-1]||o.push(this.currentRender.body.column.call(this,t,a,i))}return o.join("")},index:function(e,t,i){var n=this.className.indexCell+" "+this.className.indexRow,o=this.workspace.className,a=this.className.rowResize;return n+=" "+o.relateProperty,this.template.design.body.index({className:{td:n,resize:a,text:this.className.indexText},type:this.type,x:e,y:t,field:"row",index:e,height:i.height,line_height:"auto"===i.height?"normal":i.height+"px"})},column:function(e,t,i){var n=this.workspace.className;return i?this.template.design.body.column({className:{cell:this.className.cell,enableDrop:n.enableDrop,relateProperty:n.relateProperty},x:e,y:t,type:this.type,height:i.height}):""}}},applying:{head:{row:function(e){return this.currentRender.head.columns.call(this,e)},columns:function(t){var i=[],n=t.length,o=this;return n&&(i.push("<colgroup>"),_.each(_.range(1,(n||0)+1),function(e){i.push(o.currentRender.head.column.call(o,-1,e,n,t[e-1]))}),i.push("<col/>"),i.push("</colgroup>")),i.join("")},column:function(e,t,i,n){return-1===t?"":this.template.applying.head.column({className:this.className.indexCell+" "+this.className.indexColumn,x:e,y:t,width:n.width||""})}},body:{columns:function(e,t,i){var n=[];if(e)for(var o=1;o<e+1;o++)n.push(this.currentRender.body.column.call(this,t,o,i));return n.join("")},column:function(e,t,i){var n=this.workspace.className;return this.template.applying.body.column({className:{cell:this.className.cell,relateProperty:n.relateProperty},x:e,y:t,type:this.type,height:i.height})}}}},render:function(){var e=this.renderTemplate,t={design:"design",applying:"applying",view:"applying"}[this.pattern];return b.extend(!0,this.currentRender,e[t]),e=this.template.container({className:{tbodyContainer:this.className.tbodyContainer,tbodyContent:this.className.tbodyContent,range:this.className.selectedRange,button:this.className.button,borderH:this.className.selectedRangeBorderH,borderT:this.className.selectedRangeBorderTop,borderB:this.className.selectedRangeBorderBottom,borderR:this.className.selectedRangeBorderRight,borderL:this.className.selectedRangeBorderLeft,borderV:this.className.selectedRangeBorderV},headHtml:this.currentRender.head.row.call(this,this.options.columns),bodyHtml:this.currentRender.body.rows.call(this,this.options.rows,this.options.columns)}),this.guid=this.className.table+"-"+b.formbuilder.getGuid(),b(e).attr("id",this.guid).addClass(this.className.table)},formatColumnsWidth:function(){for(var e,t,i=this.options.columns,n=0,o=[],a=0,r=0,l=i.length;r<l;r++)void 0!==(e=i[r])._width?e.width=e._width:e._width=e.width,e.width?isNaN(e.width)&&-1!==e.width.indexOf("%")&&(n+=parseInt(e.width)):o.push(e),a+=e.width;for(l=o.length,t=Math.floor((100-n)/l),r=0;r<l;r++)(e=o[r]).width=t+"%";""==this.options.table.width&&(this.options.table.width=a)},cacheRangeElements:function(){this.coverElem=this.elem.find("."+this.className.selectedRange),this.rangeElem.top=this.elem.find("."+this.className.selectedRangeBorderTop),this.rangeElem.bottom=this.elem.find("."+this.className.selectedRangeBorderBottom),this.rangeElem.left=this.elem.find("."+this.className.selectedRangeBorderLeft),this.rangeElem.right=this.elem.find("."+this.className.selectedRangeBorderRight)},updateCell:function(e,t,i){this.cancelMergeCell(t.colspan,t.rowspan,e),this.mergeCell(i.colspan,i.rowspan,e),this.updateDrakeContainers()},cancelMergeCell:function(e,t,i){var n,o,a,r,l;if(1<e||1<t){for(var s=e;0<s;s--)for(var c=t;0<c;c--)if(n=i.x+c-1,o=i.y+s-1,n>this.options.table.rows||o>this.options.table.columns)(l=this.findCellObj(i.x,i.y)).rowspan>c&&--l.rowspan,l.colspan>s&&--l.colspan;else if(l=b(this.findCell(n,o)||this.currentRender.body.column.call(this,n,o,this.workspace.findRowObj(n))),(r=this.findCell(i.x+c-1,i.y+s))&&1===r.length)1===c&&1===s||(r.before(l),this.workspace.addCell(n,o,l),b.formbuilder.refreshPropertiesBySelecteds(this.pattern,this,["border-style"],l));else{if(1===c){if(1===e)continue;a=this.findCell(i.x,i.y)}else a=this.findCell(i.x+c-1,i.y-1);a?a.after(l):this.workspace.findRow(i.x+c-1).append(l),this.workspace.addCell(n,o,l),b.formbuilder.refreshPropertiesBySelecteds(this.pattern,this,["border-style"],l)}this.updateControlProperty(i.x,i.x,i.y,i.y,["height-container"])}},mergeCell:function(e,t,i){var n,o,a,r={start:null,"top-left":null,middle:null};if(0<e||0<t){for(var l,s=(l=(l=this.getStartSelected()).length?l:null)?b.formbuilder.getPosition(l):i,c=0;c<e;c++)for(var d=0;d<t;d++)0===c&&0===d?l&&(a=this.findControlData(i.x,i.y),r["top-left"]=a,this.workspace.removeControl(i.x,i.y)):(n={x:i.x+d,y:i.y+c},l&&(s.x===n.x&&s.y===n.y?(a=this.findControlData(n.x,n.y),r.start=a):r.start||r["top-left"]||r.middle||(a=this.findControlData(n.x,n.y),r.middle=a),this.workspace.removeControl(n.x,n.y)),this.workspace.removeCell(n.x,n.y,i.x,i.y));l&&(o=r.start||r["top-left"]||r.middle)&&this.renderControl(o,i)}},mergeCells:function(e){var t,i,n,o=0,a=0;if(e&&0!==e.length){for(var r,l=e instanceof Array?e:e.toArray(),e=b(l[0]),s=(r=this.getPosition(e)).x,c=r.y,d=0,u=l.length;d<u;d++)i=b(l[d]),t=this.getPosition(i),n=parseInt(i.attr("colspan"))||1,i=parseInt(i.attr("rowspan"))||1,t.x===s&&(a+=n),t.y===c&&(o+=i);(r=this.findCellObj(s,c)).rowspan=o,r.colspan=a,this.updateProperties(e,["rowspan","colspan"],[o,a],b.formbuilder.getTimestamp()),this.pattern!==b.formbuilder.PATTERN.VIEW&&(this.clearAllState(),this.setSelectedRange(e,e),this.updateBorderStyle(s,s,c,c,r)),this.updateControlHeight(s,c)}},cancelMergeCells:function(e,t){function i(e,t){a=a||{x:e,y:t},e<=(o=o||{x:e,y:t}).x&&(o.x=e),t<=o.y&&(o.y=t),e>=a.x&&(a.x=e),t>=a.y&&(a.y=t)}var n,o,a,r,l,s,c,d,u,p=e,h=[];if(1<p.length)for(d=0,u=p.length;d<u;d++)n=b(p[d]),r=parseInt(n.attr("colspan")||1),l=parseInt(n.attr("rowspan")||1),s=this.getPosition(n),(1<r||1<l)&&h.push(s),i(s.x,s.y);else s=this.getPosition(n=t),h.push(s),i(s.x,s.y);for(d=0,u=h.length;d<u;d++)c=this.findObj(this.options.cells,(s=h[d]).x,s.y),i(s.x+(c.rowspan-1),s.y+(c.colspan-1)),c.rowspan=1,c.colspan=1,this.property.cell.rowspan.update.call(this,1,s),this.property.cell.colspan.update.call(this,1,s);this.clearAllState(),e=this.findCell(o.x,o.y),t=this.findCell(a.x,a.y),this.setSelectedRange(e,t),this.updateBorderStyle(o.x,a.x,o.y,a.y,c)},getCellsByRange:function(e,t,i,n){var o=[],a=this;return _.forEach(_.range(e,t+1),function(t){_.forEach(_.range(i,n+1),function(e){o.push(a.findCell(t,e))})}),o},getPropertyControl:function(e,t){return"_table"===e?this:this.findControlObj(t.x,t.y)},getPropertyItems:function(e,t,i){return"_table"===e?t?this.property[t]:this.property:this.findControlObj(i.x,i.y).property},getPropertyData:function(e,t,i){var n,o=this.options,a=this.propertyMap;return o?("_table"===e&&t?(n=o[a[t].map],_.isArray(n)&&(n=this.findObj(n,i.x,i.y))):n=(e=this.findControlObj(i.x,i.y)||null)&&e.elem&&e.type?e.options:e,n):null},getControl:function(e,t){var i;return"_table"===e?i=this:t&&(i=this.findControlObj(t.x,t.y)),i},removeControls:function(){var e,t=this;t.getSelected().each(function(){e=t.getPosition(b(this)),t.removeControl(e)})},removeControl:function(e){this.workspace.removeControl(e.x,e.y)},cancelCutControlActive:function(){var e=this.cache["cut-control"];if(e&&0<e.length)for(var t=0,i=e.length;t<i;t++)e[t].elem.removeClass(this.className.controlCut)},cutControls:function(){var o,a=this,e=a.getSelected();this.cancelCutControlActive(),o=this.cache["cut-control"]=[],this.cache["cut-paste-control"]=new Set,this.cache["copy-control"]=null,e.each(function(){var e=b(this),t=e.closest("td"),i=a.getPosition(t),n=t.attr("data-type"),t=t.attr("data-property-field"),n=a.getPropertyData(n,t,i),t=a.getControl(null,i);o.push({control:t,position:i,cell:n,elem:e}),e.addClass(a.className.controlCut)})},cutControl:function(e,t){this.cache["cut-control"].push({elem:e,position:t}),e.addClass(this.className.controlCut)},copyControls:function(){let o=this,e=o.getSelected(),a;this.cancelCutControlActive(),this.cache["cut-control"]=null,a=this.cache["copy-control"]=[],e.each(function(){var e=b(this),t=e.closest("td"),i=o.getPosition(t),n=t.attr("data-type"),t=t.attr("data-property-field"),n=o.getPropertyData(n,t,i),t=o.getControl(null,i);a.push({control:t,position:i,cell:n,elem:e})})},copyControl:function(e,t){this.cache["copy-control"].push({elem:e,position:t})},pasteControls:function(){let c=this,e=this.cache["cut-control"]?"cut":"copy",d=["x","x1","y","y1"],{rows:u,columns:p}=this.getTableOptions(),h=[],t,i,n,o,a,r,m,f,l;if(!(this.getStartSelected().length<=0)&&(this.cancelCutControlActive(),l="cut"==e?(t=this.cache["cut-control"],this.cache["cut-control"]=null,this.pasteCutControl):(t=this.cache["copy-control"],this.pasteCopyControl),t&&0<t.length)){i=this.getStartSelected(),o=this.getPosition(i),a=o,r=_.clone(t[0].position),m=o.x-r.x,f=o.y-r.y,_.chain(t).each(function(e){var i,{position:e,cell:t}=e,{x:n,y:o}={x:e.x+m,y:e.y+f},a=[],r=[];if(!(n>u||o>p)){i=c.findCell(n,o);for(var[l,s]of Object.entries(t)){let e=s,t=s?.timestamp;-1===d.indexOf(l)&&("colspan"==l?e=o+s-1>p?p-o+1:s:"rowspan"==l&&(e=n+s-1>u?u-n+1:s),t?h.push({name:l,value:e,timestamp:t,$cell:i}):(a.push(l),r.push(e)))}c.updateProperties(i,a,r)}}).map(function(e){return e.position.x}).uniq().each(function(e){var t=e,e=e+m,t=c.workspace.findRowObj(t),e=c.workspace.findRowIndex(e);c.updateProperties(e,"height",t.height)}).value(),h.sort((e,t)=>e.timestamp-t.timestamp).forEach(e=>{var{$cell:e,name:t,value:i,timestamp:n}=e;c.updateProperties(e,[t],[i],n)}),this.clearSelectedState();for(var s=0,g=t.length;s<g;s++){var{control:b,position:v}=t[s],y=v.x+m,x=v.y+f;y>u||x>p||(r.x=y,r.y=x,l.call(this,v,r,b.options),r.x>a.x&&this.options.table.rows-1>=r.x&&(a[0]=r[0]),r.y>a.y&&p-1>=r.y&&(a.y=r.y))}n=this.findCell(r.x,r.y),this.setSelectedRange(i,n)}},pasteCutControl:function(e,t,i){var n,o,a,r,l;i&&({x:o,y:a}=e,{x:r,y:l}=t,(n=this.cache["cut-paste-control"]).has(o+"-"+a)||this.removeControl(e),this.removeControl(t),this.renderControl(i,t),n.add(r+"-"+l))},pasteCopyControl:function(e,t,i){i&&(i.id=null,i["extension-direction"]=null,i["relation-position"]=null,this.removeControl(t),this.renderControl(i,t))},clearAllState:function(){this.elem.find("td").removeClass([this.className.cellSelect,this.className.cellSelectStart,this.className.cellSelectEnd,this.className.indexCellActive].join(" "))},clearSelectedState:function(){this.elem.find("."+this.className.cellSelect).removeClass([this.className.cellSelect].join(" ")),this.elem.find("."+this.className.indexCellActive).removeClass(this.className.indexCellActive)},getStartSelected:function(){return this.elem.find("td."+this.className.cellSelectStart)},getEndSelected:function(){return this.elem.find("td."+this.className.cellSelectEnd)},getSelected:function(){return this.elem.find("td."+this.className.cellSelect)},getSelectedControl:function(){return this.elem.find("td."+this.className.cellSelect+" ."+this.workspace.className.item)},setIndexCellActive:function(e){e&&e.addClass(this.className.indexCellActive)},setColumnActive:function(e){var t=this,e=this.workspace.findColumnCells(e);return e&&0!==e.length?(_.each(e,function(e){e.addClass(t.className.cellSelect)}),e=this.workspace.findAllRowIndex(),_.each(e,function(e){e&&0<e.length&&e.addClass(t.className.indexCellActive)}),e.length?e[e.length-1]:null):[]},setRowActive:function(e){var t=this,e=this.workspace.findRowCells(e);return e&&0!==e.length?(_.each(e,function(e){e.addClass(t.className.cellSelect)}),e=this.workspace.findAllColumnIndex(),_.each(e,function(e){e&&0<e.length&&e.addClass(t.className.indexCellActive)}),e.length?e[e.length-1]:null):[]},setSelectdState:function(e){e.addClass([this.className.cellSelect].join(" "))},setSelectdStartState:function(e,t){var i=[this.className.cellSelect,this.className.cellSelectStart].join(" ");t?e.removeClass(i):e.addClass(i)},setSelectdEndState:function(e,t){var i=[this.className.cellSelect,this.className.cellSelectEnd].join(" ");t?e.removeClass(i):e.addClass(i)},setSelectedCell:function(e){this.isInSelectedRang(e)||(this.clearAllState(),this.setSelectdStartState(e),this.setSelectdEndState(e),this.setSelectedRange(e,e))},isInSelectedRang:function(e){var t=this.getSelected();if(1<t.length&&(e=this.getPosition(e),1===this.filterCells(e.x,e.y,"",t).length))return!0},setSelectedRange:function(e,t){var i,n,o,a,r,l,s,c,d,u,p,h;if(e&&0<e.length&&(i=this.getPosition(e)||null),t&&0<t.length&&(n=this.getPosition(t)||null),i&&n){if(_.isEqual(i,n))c=this.findCellObj(i.x,i.y)||{},o=i.x,a=i.y,r=i.x+(c.rowspan||1)-1,l=i.y+(c.colspan||1)-1;else for(o=i.x,a=i.y,(r=n.x)<o&&(s=o,o=r,r=s),(l=n.y)<a&&(s=a,a=l,l=s),p=o;p<=r;p++)for(h=a;h<=l;h++)(c=this.findCellObj(p,h)).rowspan||c.colspan||(o>c.x1&&(o=c.x1),a>c.y1&&(a=c.y1)),d=c.rowspan,1<(u=c.colspan)&&l<h+u-1&&(l=h+u-1),1<d&&r<p+d-1&&(r=p+d-1);this.setRangeHighlight(o,r,a,l)}},renderRangeHighlight:function(e,t,i,n){this.rangeElem.top.css({left:i.left,top:i.top,width:i.width}),this.rangeElem.bottom.css({left:n.left,top:n.top,width:n.width}),this.rangeElem.left.css({left:e.left,top:e.top,height:e.height}),this.rangeElem.right.css({left:t.left,top:t.top,height:t.height}),this.rangeElem.top.show(),this.rangeElem.bottom.show(),this.rangeElem.left.show(),this.rangeElem.right.show()},displayRangeHighlight:function(e,t,i,n,o,a){var r,l=o.x,s=o.y,c=this.cache;a&&0!==a.length&&(l===e&&s===i&&(r=a.position(),c.selected={},c.range.left=r.left,c.range.top=r.top),l===t&&s===n&&(0===a.length&&(o={x:(e=this.findCellObj(o.x,o.y)).x1,y:e.y1},a=this.findCell(o.x,o.y)),r=a.position(),c.range.endWidth=a.outerWidth(),c.range.endHeight=a.outerHeight(),c.range.right=r.left+c.range.endWidth-1,c.range.bottom=r.top+c.range.endHeight,c.range.width=c.range.right-c.range.left,c.range.height=c.range.bottom-c.range.top+2,this.renderRangeHighlight({left:c.range.left,top:c.range.top,height:c.range.height},{left:c.range.right,top:c.range.top,height:c.range.height},{left:c.range.left,top:c.range.top,width:c.range.width},{left:c.range.left,top:c.range.bottom,width:c.range.width})))},displayRowRangeHeighlight:function(e,t){var t=this.setRowActive(t),i=e.position(),n=t.position(),o=e.outerHeight(),e=i.left+e.outerWidth(),a=i.top,i=i.top+o,n=n.left+t.outerWidth(),t=n-e+2;this.renderRangeHighlight({top:a,left:e,height:o},{top:a,left:n,height:o},{top:a,left:e,width:t},{top:i,left:e,width:t})},displayColRangeHeighlight:function(e,t){var t=this.setColumnActive(t),i=e.position(),n=t.position(),o=e.outerWidth(),a=i.left,r=i.left+o,i=i.top+e.outerHeight(),e=n.top+t.outerHeight(),n=e-i+2;this.renderRangeHighlight({top:i,left:a,height:n},{top:i,left:r,height:n},{top:i,left:a,width:o},{top:e,left:a,width:o})},hideRangeHighlight:function(){this.rangeElem.top.hide(),this.rangeElem.bottom.hide(),this.rangeElem.left.hide(),this.rangeElem.right.hide()},setRangeHighlight:function(e,t,i,n){for(var o,a,r,l,s=e;s<=t;s++)for(-1!==s&&this.pattern===b.formbuilder.PATTERN.DESIGN&&(a=this.workspace.findRowIndex(s),this.setIndexCellActive(a)),o=i;o<=n;o++){if(-1!==o&&(a=this.workspace.findColumnIndex(o),this.setIndexCellActive(a)),-1===s||-1===o)return;(r=this.findCell(s,o))&&r.length?this.setSelectdState(r):(l={x:(l=this.findCellObj(s,o)).x1,y:l.y1},r=this.findCell(l.x,l.y)),this.displayRangeHighlight(e,t,i,n,{x:s,y:o},r)}},resizeRangeHighlight:function(e,t,i){"row"===i?this.displayRowRangeHeighlight(e,t):"column"===i&&this.displayColRangeHeighlight(e,t)},bindSelectCells:function(){this.pattern!==b.formbuilder.PATTERN.VIEW&&(this.bindSelectRange(),this.bindActiveIndexCell())},bindApplyingSelectCells:function(){var t=this;this.elem.on("mousedown","input,textarea,[contenteditable]",function(e){t.clearAllState(),t.hideRangeHighlight(),e.stopPropagation()}),this.bindSelectCells()},bindSelectRange:function(){var n=this;this.elem.on("mousedown","."+this.className.cell,function(e){var t=b(this),i=b(e.target);1!==e.which||0===e.button&&0===e.buttons||(n.clearAllState(),document.onselectstart=function(){return!1},n.cache.which=1,n.cache.startSelect=i,n.setSelectdStartState(t))}),this.elem.on("mouseover","."+this.className.cell,function(e){var t=b(this);1!==n.cache.which||n.isControlInDrag()||(n.clearSelectedState(),n.setSelectedRange(n.getStartSelected(),t))}),this.elem.on("mouseup","."+this.className.cell,function(e){var t,i=b(this);document.onselectstart=function(){return!0},1===n.cache.which&&(n.cache.which=null,n.isControlInDrag()||(t=n.getStartSelected(),n.setSelectdEndState(i),n.setSelectedRange(t,i),0<t.length&&n.pattern===b.formbuilder.PATTERN.DESIGN&&(i=n.cache.startSelect.closest("."+n.workspace.className.relateProperty),n.showGridProperty(i))))})},bindActiveIndexCell:function(){var o=this;this.elem.on("click","td."+this.className.indexCell,function(e){var t=b(this),i=o.getPosition(t),n=i.y,i=i.x;o.clearAllState(),o.setIndexCellActive(t),o.hideRangeHighlight(),o.workspace.builder.updateProperty(t),-1===i&&-1!==n?o.displayColRangeHeighlight(t,n):-1===n&&-1!==i&&o.displayRowRangeHeighlight(t,i)})},bindResizeIndexCell:function(){this.pattern===b.formbuilder.PATTERN.DESIGN&&(this.bindColResize(),this.bindRowResize())},renderDatasetButtons:function(e){return["<div class='",e.className.buttons,"' style='top:2px;left:2px;'>","<div class='",e.className.button," ",e.className.insertButton,"' style='background-image:url(",e.insertIcon,");'></div>",e.removeIcon?["<div class='",e.className.button," ",e.className.removeButton,"' style='background-image:url(",e.removeIcon,");'></div>"].join(""):"","</div>"].join("")},getDatasetRowInfo:function(e){var t,i,n,o=this.workspace.datasetRows;return o?(t=o.vertical,o=o.horizontal,(o=t[i=(e=b.formbuilder.getPosition(e)).x]||o[i])&&"horizontal"===o.type?o=(n=o)[e.y]:n=t,{items:n,item:o}):null},getActiveDatasetRow:function(n,o,e){var a=[],r=this,t=this.workspace.datasetTemplate;return _.each(e,function(i){i.x===n&&i.y===o&&_.each(t[i.id],function(e){var t,e="vertical"===i.type?(t=n,e.y):(t=e.x,o);a.push(r.findCell(t,e))})}),a},setHoverDatasetRow:function(e,t){var i=this;e&&e.length&&_.each(e,function(e){t?e.addClass(i.className.cellHover):e.removeClass(i.className.cellHover)})},setActiveDatasetRow:function(e,t){var i=this;e&&e.length&&_.each(e,function(e){t?e.addClass(i.className.cellActive):e.removeClass(i.className.cellActive)})},bindDatasetRowEvent:function(){var s,e,c,d,u,p;this.pattern===b.formbuilder.PATTERN.APPLYING&&((e=b((s=this).elem)).on("mouseenter","td."+this.className.cell,function(e){var t,i,n,o,a,r=b(this),l={insert_horizontal:"insert-column.png",insert_vertical:"insert-row.png",remove_horizontal:"remove-column.png",remove_vertical:"remove-row.png"},r=(p=s.getDatasetRowInfo(r)||{}).items;(t=p.item)&&(r=_.filter(r||[],function(e){return t.id===e.id}),a=(s.cache.dataset.items=r).length,n=t.x,o=t.y,i=s.findCell(n,o),u=s.getActiveDatasetRow(n,o,r),s.cache.dataset.$row=u,s.setHoverDatasetRow(u,!0),n=s.workspace.builder.getImage(l["insert_"+t.type]),o=s.workspace.builder.getImage(l["remove_"+t.type]),p=t,c&&c.remove(),s.hasDatasetCtrls(t.id)||(d=s.renderDatasetButtons({className:{buttons:s.className.buttons,button:s.className.button+" "+s.className.button+"-"+t.type,insertButton:s.className.datasetInsertButton,removeButton:s.className.datasetRemoveButton},insertIcon:n,removeIcon:1<a&&o}),c=b(d),i.append(c)))}),e.on("mouseleave","tr."+this.className.row,function(e){p=null,u&&0<u.length&&(s.setHoverDatasetRow(u,!1),u=null),c&&c.remove()}),e.on("click","."+this.className.cellHover,function(e){s.setActiveDatasetRow(s.cache.dataset.$activeRow,!1),s.setActiveDatasetRow(s.cache.dataset.$row,!0),s.cache.dataset.$activeRow=s.cache.dataset.$row,s.cache.dataset.selected=p}),e.on("click","."+this.className.button,function(e){var t=b(this).hasClass(s.className.datasetInsertButton)?"insert":"remove";p&&(s.clearActiveCell(),"insert"==t?s.insertDatasetRow(p.id,p.index):(s.removeDatasetRow(p.id,p.index),c.remove())),e.stopPropagation()}),e.on("dblclick","td."+this.className.cell,function(e){var t,i,n,o=s.workspace.events.datasetsRowSelect;o&&"function"==typeof o&&(n=b(this),(t=(s.getDatasetRowInfo(n)||{}).item)&&(n=b.formbuilder.getPosition(n),i=s.workspace.getDatasetRow(t.id,t.type,{x:t.x,y:t.y}),o.call(s.workspace.builder.elem,t.id,i,t.index,n)))}))},bindColResize:function(e){var l,s,i,c,d,u,p,h,e=e||this.elem,m=this,n=m.options.columns,f=m.property.column.width.update,g=0;e.find("."+this.className.colResize).draggable({axis:"x",helper:"clone",containment:m.elem,revert:!0,start:function(e,t){l=b(e.target).closest("td"),s=l.next(),u=m.getPosition(l),i=l.siblings(),p=m.findObj(n,-1,u.y),h=m.findObj(n,-1,u.y+1),c=l.outerWidth(),d=s.outerWidth(),g=c+d,l.width(c),s.width(d),l.addClass([m.className.resizing,m.className.colIndexResizing].join(" ")),i.addClass(m.className.colIndexResizing)},drag:function(e,t){var i,n,o,a,r,t=t.position.left;t<=1?t=1:g<=t&&(t=g-1),i=d-(t-c),n={current:p.width,next:h.width},o={current:t,next:i},a=(n=n).current,r=n.next,n=isNaN(a)&&isNaN(r)?(r=parseInt(n.current)+parseInt(n.next),n=o.current+o.next,{current:(a=Math.floor(r*o.current/n))+"%",next:r-a+"%"}):o,p.width=n.current,h.width=n.next,f.call(m,i,u,null,s),f.call(m,t,u,null,l),m.resizeRangeHighlight(l,u.y,"column"),m.updateCellProperty(u.x,m.options.table.rows,u.y,u.y+1,["border-style"])},stop:function(e,t){l.removeClass([m.className.resizing,m.className.colIndexResizing].join(" ")),i.removeClass(m.className.colIndexResizing),m.showGridProperty(l)}})},bindRowResize:function(e){var i,n,o,a,r,l,e=e||this.elem,s=this,c=s.property.row.height.update,d=s.options.rows;e.find("."+this.className.rowResize).draggable({axis:"y",helper:"clone",containment:s.elem,revert:!0,start:function(e,t){i=b(e.target).closest("td"),r=s.getPosition(i),l=s.findObj(d,r.x,-1),o=i.closest("tr"),a=s.getRowSelectedCells(r.x),n=o.siblings("."+s.className.row).find("."+s.className.indexCell),i.addClass([s.className.resizing,s.className.rowIndexResizing].join(" ")),n.addClass(s.className.rowIndexResizing)},drag:function(e,t){t=t.position.top;l.height=t=t<=1?1:t,c.call(s,t,null,null,a),s.resizeRangeHighlight(i,r.x,"row"),s.updateCellProperty(r.x,r.x,1,s.options.table.columns,["border-style"])},stop:function(e,t){i.removeClass([s.className.resizing,s.className.rowIndexResizing].join(" ")),n.removeClass(s.className.rowIndexResizing),s.showGridProperty(i)}})},bindActiveCell:function(){var n=this;this.elem.on("mousedown","."+this.className.cell,function(e){var t=b(this),e=b(e.target),i=n.cache.$activeCell;i&&0<i.length&&i.removeClass(n.className.cellActiveTarget),e.hasClass(n.className.button)||(t.addClass(n.className.cellActiveTarget),n.cache.$activeCell=t,(i&&i[0])!=t[0]&&n.events&&n.events.activeCellChange.call(n.workspace,i,t))})},clearActiveCell:function(){var e=this.cache.$activeCell;e&&(this.cache.$activeCell=null,this.workspace?.activeCellChange(e,null))},bindScroll(){let e=this.content,t=this;e.on("scroll",e=>{t.events.onScroll.call(t.workspace)})},unbindScroll(){this.content.unbind("scroll")},getRowSelectedCells:function(e){return{$index:this.workspace.findRowIndex(e),cells:this.workspace.findRowCells(e),$row:this.workspace.findRow(e)}},getColumnSelectedCells:function(e){return{$index:this.workspace.findColumnIndex(e),cells:this.workspace.findColumnCells(e)}},updateMoveRows:function(e,o){var a=this,t=this.options.table.rows;e<=t&&_.each(_.range(e,t+1),function(e){var i,n=e+o,t=a.workspace.findRowIndex(e);t&&(b.formbuilder.setPosition(n,-1,t),t.find("."+a.className.indexText).text(n)),a.workspace.findRow(e).attr("data-rowIndex",n),t=a.workspace.findRowCells(e,!1),_.each(t,function(e,t){i=t+1,e&&b.formbuilder.setPosition(n,i,e)}),t=a.workspace.findRowControls(e,!1),_.each(t,function(e,t){i=t+1,e&&b.formbuilder.setPosition(n,i,e)})})},updateMergeBeforeRemove:function(e,t,i){var n,o,a,r,l=this,s={},e=_.range(e,e+t),c="rowspan"===i?l.workspace.findRowCellsObj:l.workspace.findColumnCellsObj;return _.each(e,function(e){var e=c.call(l.workspace,e),t={};_.each(e,function(e){(1<(a=e[i])||e.x1&&e.y1)&&(o=1<a?(n=e.x,e.y):(n=e.x1,e.y1),e=l.findCellObj(n,o),r=[n,o].join("-"),s[r]=s[r]||{x:n,y:o,colspan:e.colspan,rowspan:e.rowspan,top:!1},1<a&&(s[r].top=!0),n===t.x&&o===t.y||--s[r][i],t={x:n,y:o})})}),_.each(s,function(e){e=l.findCell(e.x,e.y);l.updateProperties(e,i,1)}),s},updateMergeAfterRemove:function(e,n){var o=this;_.each(e,function(e){var t=e.x,i=e.y,e=e[n];1<e&&(t=o.findCell(t,i),o.updateProperties(t,n,e))})},updatePropertyByType:function(e,t,i,n,o,a,r){var l=this.pattern,e=this.getCellsByRange(e,t,i,n),s=this;"control"===r&&(e=_(e).chain().map(function(e){e=e.find("."+s.workspace.className.controlContainer);if(0<e.length)return e}).compact().value()),a?b.formbuilder.updatePropertiesByOptions(l,this,o,a,e):b.formbuilder.refreshPropertiesBySelecteds(l,this,o,e)},updateCellProperty:function(e,t,i,n,o,a){this.updatePropertyByType(e,t,i,n,o,a,"cell")},updateControlProperty:function(e,t,i,n,o,a){this.updatePropertyByType(e,t,i,n,o,a,"control")},updateBorderStyle:function(e,t,i,n,o){this.updateCellProperty(e,t,i,n,["border-style"],o)},updateControlHeight:function(e,t){e=this.findControlObj(e,t);e&&e.type&&this.updateProperties(e.container,"height-container")},insertRows:function(e,t,i){var n,o=this,a=b.extend({},this.propertyField.row,i),r=[],i=this.options.table.rows,l=this.options;t<1||(this.hideRangeHighlight(),e=e,_.each(_.range(e,e+t),function(e){e=b(o.currentRender.body.row.call(o,e,a,l.table.columns));r.push(e)}),(n=this.workspace.findRow(e<i?e:i))&&(i<e?n.after(r):n.before(r),r.forEach(e=>{this.bindRowResize(e)}),this.updateInsertRows(e,r,a),this.updateInsertRowsMerge(e,t),this.updateBorderStyle(e-1,this.options.table.rows,1,this.options.table.columns),this.updateDrakeContainers()))},updateInsertRows:function(e,t,i){var n=t.length;this.updateMoveRows(e,n),this.workspace.insertRows(t,e,null,null,i)},updateInsertRowsMerge:function(i,r){var l=this,e=this.workspace.findRowCellsObj(i+r),n=[];_.each(e,function(e){var t=e.x1,e=e.y1;t&&e&&t<i&&n.push({x1:t,y1:e})}),_(n).uniqWith(_.isEqual).each(function(e){var t=1,i=e.x1,n=e.y1,o=l.findCell(i,n),a=l.findControlObj(i,n);i!==e.x&&(t=l.findCellObj(i,n).rowspan+r),l.updateProperties(o,"rowspan",t),a&&a.type&&l.updateProperties(a.container,"height-container")})},removeRows:function(e,t){var i,n,o=this;t=t||1,this.hideRangeHighlight(),i=(e=e)+t,n=o.updateMergeBeforeRemoveRows(e,t),_.each(_.rangeRight(e,i),function(e){o.workspace.findRow(e).remove()}),this.updateRemoveRows(e,t),this.updateMergeAfterRemoveRows(n),this.updateBorderStyle(e-1,this.options.table.rows,1,this.options.table.columns)},updateRemoveRows:function(e,t){var i=-t;e+=Math.abs(t),this.updateMoveRows(e,i),this.workspace.removeRows(t,e,null,null)},updateMergeBeforeRemoveRows:function(e,t){return this.updateMergeBeforeRemove(e,t,"rowspan")},updateMergeAfterRemoveRows:function(e){this.updateMergeAfterRemove(e,"rowspan")},insertColumns:function(e,t){var i,n,o,a,r,l=this,s=this.options.table.rows,c=this.options.table.columns,d=[],u=[],p=b.extend({},this.propertyField.column);this.hideRangeHighlight(),t=t||1,i=e,_.each(_.range(i,i+t),function(t){var i=[];r=b(l.currentRender.head.column.call(l,-1,t,c,p)),u[0]=u[0]||[],u[0].push(r),i.push(r),_.each(_.range(1,s+1),function(e){o=b(l.currentRender.body.column.call(l,e,t,l.options.rows[e-1])),u[e]=u[e]||[],u[e].push(o),i.push(o)}),d.push(i)}),_.each(_.range(0,s+1),function(e){n=i<c?i:c,0===e?(r=l.workspace.findColumnIndex(n),i<=c?r.before(u[0]):r.after(u[0]),u[0].forEach(e=>l.bindColResize(e))):(a=l.workspace.findCell(e,n))?i<=c?a.before(u[e]):a.after(u[e]):(l.workspace.findCellObj(e,n),1<(n=n-1)&&(a=l.workspace.findCell(e,n))?a.after(u[e]):(n=l.workspace.findRowCellsObj(e),(n=_.find(n,function(e){return!e.x1&&!e.y1}))?(a=l.workspace.findCell(n.x,n.y)).after(u[e]):l.workspace.findRow(e).append(u[e])))}),this.updateInsertColumns(i,c,d),this.updateInsertColumnsMerge(i,t),this.updateBorderStyle(1,this.options.table.rows,i-1,this.options.table.columns),this.updateDrakeContainers()},updateMoveColumns:function(e,t,o){var a=this,i=this.options.table.rows;_.each(_.range(1,i+1),function(n){_.each(_.range(e,t+1),function(e){var t=e+o,i=a.workspace.findColumnIndex(e);i&&(b.formbuilder.setPosition(-1,t,i),i.find("."+a.className.indexText).text(t)),(i=a.workspace.findCell(n,e))&&b.formbuilder.setPosition(n,t,i),(i=a.workspace.findControl(n,e))&&b.formbuilder.setPosition(n,t,i)})})},updateInsertColumns:function(e,t,i){var n=i.length;this.updateMoveColumns(e,t,n),this.workspace.insertColumns(i,e,null,null)},updateInsertColumnsMerge:function(i,o){var a=this,e=this.workspace.findColumnCellsObj(i+o),n=[];_.each(e,function(e){var t;e&&(t=e.x1,e=e.y1,t&&e&&e<i&&n.push({x1:t,y1:e}))}),_(n).uniqWith(_.isEqual).each(function(e){var t=e.x1,i=e.y1,n=a.findCell(t,i);i!==e.y&&(e=a.findCellObj(t,i).colspan+o,a.updateProperties(n,"colspan",e))})},removeColumns:function(e,t){var i,n,o,a=this,r=this.options.table.rows,l=this.options.table.columns;this.hideRangeHighlight(),i=(e=e)+(t=t||1),o=a.updateMergeBeforeRemoveColumns(e,t),_.each(_.range(e,i),function(t){_.each(_.range(1,r+1),function(e){(n=a.findCell(e,t))&&n.remove()}),a.workspace.findColumnIndex(t).remove()}),e+=Math.abs(t),this.updateRemoveColumns(e,l,t),this.updateMergeAfterRemoveColumns(o),this.updateBorderStyle(1,this.options.table.rows,this.options.table.columns,this.options.table.columns)},updateRemoveColumns:function(e,t,i){this.updateMoveColumns(e,t,-i),this.workspace.removeColumns(i,e,null,null)},updateMergeBeforeRemoveColumns:function(e,t){return this.updateMergeBeforeRemove(e,t,"colspan")},updateMergeAfterRemoveColumns:function(e){this.updateMergeAfterRemove(e,"colspan")},isControlInDrag:function(){return 0<b("body>div."+this.workspace.className.dragging).length},showGridProperty:function(e,t){t=t||e,this.workspace.builder.updateProperty(e),this.workspace.builder.menu.updateItems(t)},updateDrakeContainers:function(){var e=this.workspace.builder;this.pattern===b.formbuilder.PATTERN.DESIGN&&e.drake&&(e.drake.containers=e.getDrakeContainers())},renderControl:function(e,t){e.x=t.x,e.y=t.y,this.workspace.addNewItem(e,t)},findCell:function(e,t){return this.workspace.findCell(e,t)},filterCells:function(e,t,i,n){return(n||this.elem).filter((i||"")+"[data-position='["+e+","+t+"]']")},findObj:function(e,t,i,n){return b.formbuilder.findObj(e,t,i)},findControl:function(e,t){return this.workspace.findControl(e,t)},findControlObj:function(e,t){return this.workspace.findControlObj(e,t)},findControlData:function(e,t){e=this.workspace.findControlObj(e,t);return(e=e.elem?e.options:e).type?e:null},findCellObj:function(e,t){return this.workspace.findCellObj(e,t)},getPosition:function(e){return e.length?b.formbuilder.getPosition(e):{x:null,y:null}},pullObj:function(e,t,i){b.formbuilder.updateSignObj(e,t,i,void 0)},getRealCell:function(e,t){var e=this.findCellObj(e,t)||{},t=e.x1,i=e.y1;return e=t&&i?this.findCellObj(t,i):e},isDefaultBorderStyle:function(e,t){var i=this.options.table["border-style"]||this.propertyField.table["border-style"],n=this.options.table["border-color"]||this.propertyField.table["border-color"];if(e=e||i,!(t=(t["border-color"]||{}).value||n)&&!e)return!0;if(e instanceof Array){if(e.some(e=>e!=i))return!1;e=i}return i===(e||"border-solid")&&n===t||void 0},renderBorderByPosition:function(e,t,i,n,o,a){var r,l=o["border-color"]||{},s=o["background-color"]||"#fff",c={top:"<div class='formbuilder-border-top' style='position:absolute;top:-{top};left:-{left};right:-1px;background-color:{bgColor};height:{borderWidth};z-index:{zIndex};'></div>",right:"<div class='formbuilder-border-right' style='position:absolute;top:0;bottom:0;right:-1px;background-color:{bgColor};width:{borderWidth};z-index:{zIndex};height:{height}px;'></div>",bottom:"<div class='formbuilder-border-bottom' style='position:absolute;bottom:-1px;left:-{left};right:-1px;background-color:{bgColor};height:{borderWidth};z-index:{zIndex};'></div>",left:"<div class='formbuilder-border-left' style='position:absolute;top:0;bottom:0;left:-{left};background-color:{bgColor};width:{borderWidth};z-index:{zIndex};height:{height}px;'></div>"},d=(b.formbuilder[this.pattern.toUpperCase()+"BORDERWIDTHITEMS"]||b.formbuilder.BORDERWIDTHITEMS)[t];return t=t||this.options.table["border-style"],this.isDefaultBorderStyle(t,o)?"":(o="border-none"===t?s:l.value||this.options.table["border-color"],c=c[e],r=l=s=d,"border-none"!==t||"top"!==e&&"bottom"!==e||(l=0,r="border-solid-heavy"===a[1]?"right:1px":"right:0px",c=c.replace("right:-1px",r)),c.replace(/\{bgColor\}/,o).replace(/\{borderWidth\}/g,d).replace(/\{zIndex\}/,n).replace(/\{height\}/,i).replace(/\{top\}/,s).replace(/\{left\}/,l).replace(/\{right\}/,r))},renderChangeBorder:function(e,t,i){var n,o=i.x,a=i.y,i=i["border-style"]?.timestamp;"border-none"!==e&&("top"===t?(o-=1,n=2):"right"===t?(a+=1,n=3):"bottom"===t?(o+=1,n=0):"left"===t&&(a-=1,n=1),(e=this.findCellObj(o,a))&&(t=e["border-style"]?.value,e=e["border-style"]?.timestamp,t&&t[n]&&e<i&&(t[n]="border-solid",(e=this.findCell(o,a)).length&&e.find(".formbuilder-border-"+["top","right","bottom","left"][n]).remove())))},renderBorder:function(e,t,i){var n,o,a=i["border-color"]||{},r=i["border-style"]||{};e&&(e.find(">.formbuilder-border-container").remove(),n=r.value||this.options.table["border-style"],o=a.value||this.options.table["border-color"],r=Math.max(r.zIndex||1,a.zIndex||1),(o||n)&&(this.isDefaultBorderStyle(n,i)?(this.renderChangeBorder(n,"top",i),this.renderChangeBorder(n,"right",i),this.renderChangeBorder(n,"bottom",i),this.renderChangeBorder(n,"left",i)):(a=this.getCellHeight(e,t),(o=[this.renderBorderByPosition("top",n[0],a,r,i,n),this.renderBorderByPosition("right",n[1],a,r,i,n),this.renderBorderByPosition("bottom",n[2],a,r,i,n),this.renderBorderByPosition("left",n[3],a,r,i,n)].join(""))&&(t=["<div class='formbuilder-border-container'>",o,"</div>"].join(""),e.append(t)))))},getCellHeight:function(e,t){var i,n=t.x,t=t.y,o=0,a=!1,r=this,t=this.workspace.findCellObj(n,t),l=t.rowspan||1;return _.each(_.range(n,n+(l||1)),function(e,t){if(i=r.workspace.findRowObj(e)){if("auto"===i.height)return!(a=!0);o+=i.height,0<t&&(o+=1)}}),o=a?"auto"===i.height&&1==t.rowspan?"auto":e.height():o},updateProperties:function(e,t,i,n){b.formbuilder.updatePropertiesBySelected(this.pattern,this,e,t,i,n)},getWidth:function(){return this.elem.find("."+this.className.tbodyContent).width()},getOptions:function(){return this.workspace.builder.options},getTableOptions(){return this.options.table},getDatasetRowsLengthByElem:function(t,e){e=this.getDatasetRowInfo(e),e=_.filter(e.items||[],function(e){return t===e.id}).length;return 0===e?-1:e},getDatasetRowsLengthByPosition:function(e,t){t=this.findCell(t.x,t.y);return 0===t.length?-1:this.getDatasetRowsLengthByElem(e,t)},getDatasetRowsLengthById:function(e){var t=this.workspace.datasetTemplate[e][0];return t?this.getDatasetRowsLengthByPosition(e,{x:t.x,y:t.y}):-1},insertDatasetRowBySelected:function(e){var t=this.cache.dataset.selected,t=t&&t.id&&e&&e===t.id?t.index:this.getDatasetRowsLengthById(e);0<t&&this.insertDatasetRow(e,t)},insertDatasetRow:function(e,t){this.workspace.insertDatasetRows({id:e,rows:1,index:t})},removeDataRowBySelected:function(e){var t,i,n=this.cache.dataset.selected;n&&n.id&&e&&e===n.id&&(t=this.findCell(n.x,n.y),i=this.getDatasetRowsLengthByElem(e,t),n=n.index,1<i?this.removeDatasetRow(e,n):this.addErrorTooltip(t,this.getLocalLanguage("can-not-remove")))},removeDatasetRow:function(e,t){var i,n,o=this.cache.dataset.items;if(this.workspace.removeDatasetRows({id:e,rows:-1,index:t}),o.pop(),o.length>=t){for(var a=t-1,r=o.length;a<r&&(i=o[a]);a++)i.index=t;n=o[t-1]}else n=o[t-2];this.cache.dataset.selected=n,e=this.getActiveDatasetRow(n.x,n.y,o),this.cache.dataset.$row=e,this.cache.dataset.$activeRow=e,this.setActiveDatasetRow(e,!0)},addErrorTooltip:function(e,t){var i=b('<span class="formbuilder-tooltip-error" title="'+t+'"></span>');e.append(i),setTimeout(function(){i.remove(),i=null},5e3)},hasDatasetCtrls:function(e){return this.workspace.datasetCtrls[e]||null},getBuilderOptions:function(){return this.workspace.builder.options},destroy:function(){this.options=null,this.container=null,this.elem.off(),this.elem.empty(),this.elem.remove(),this.elem=null}}}(jQuery,_),function(t){"use strict";t.formbuilder.toolbox.add("image",{title:"image",icon:"image.svg",design:function(){let e=this.options.value;return e&&-1!==e?.indexOf("base64")||(e="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAJRJREFUeNpi/P//PwMlgImBQsACItLT08lyxsyZMxlZkPiMJOr/T6oXWoH4KxB3khsGRUDMBcR55BrQA3VBP0YgEglqoZhgNIYAcT256UAEiKcCcQOSIfZAPB/qf+zpAAlMB2IxKLsBSjtAsQkQRwDxVXwuCEHjN0A1g4AOEJ8C4gR8LmAkKykjpyxSAeOA50aAAAMATvIa90OAUacAAAAASUVORK5CYII="),t(["<div class='",this.className.container,"'>","<img alt='' class='",this.className["default-img"],"' src=\"",e,'" />',"</div>"].join(""))},view:function(){return this.design()},getValue:function(){return this.options.value},className:{container:"formbuilder-control-image",img:"formbuilder-control-image-img","default-img":"formbuilder-control-image-img-default"},options:{label:"",value:"image.svg",readonly:!0,width:16,height:16},property:{value:{text:"image-upload",hidden:!1,type:"selectImage",source:{text:"image-upload",image:"imageupload.png",url:""},update:function(e){e&&-1!==e.indexOf("base64")||(e="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAJRJREFUeNpi/P//PwMlgImBQsACItLT08lyxsyZMxlZkPiMJOr/T6oXWoH4KxB3khsGRUDMBcR55BrQA3VBP0YgEglqoZhgNIYAcT256UAEiKcCcQOSIfZAPB/qf+zpAAlMB2IxKLsBSjtAsQkQRwDxVXwuCEHjN0A1g4AOEJ8C4gR8LmAkKykjpyxSAeOA50aAAAMATvIa90OAUacAAAAASUVORK5CYII="),this.elem.find(">img").attr("src",e)}},"font-family":{hidden:!0},"font-size":{hidden:!0},"font-weight":{hidden:!0},"font-style-italic":{hidden:!0},"text-decoration-underline":{hidden:!0},"relation-position":{hidden:!0},"extension-direction":{hidden:!0},readonly:{hidden:!0},required:{hidden:!0},color:{hidden:!0},width:{hidden:!1,after:["height"],afterChecking:function(e){return!e},update:function(e){this.container.width(e),this.elem.outerWidth(e),this.elem.find(">img").outerWidth(e)}},height:{hidden:!1,after:["vertical-align","align"],update:function(e){var t,i,n;this.container.height(e),this.elem.height(e),(n=this.elem.find(">img")).height(e),this.options.width||(e=n.height(),t=(i=n[0]).naturalHeight,i=i.naturalWidth,n.width(n=e*(i/t)),this.container.width(n),this.elem.width(n))}},"text-align":{hidden:!0},cascade:{hidden:!0}}})}(jQuery),function(r){"use strict";r.formbuilder.toolbox.add("file",{title:"fileupload",icon:"file-upload.svg",keepPattern:!0,source:{icon:"file.png",uploadUrl:"",deleteUrl:"",deleteParams:{},onUpload:function(){},onDelete:function(){}},applying:function(){var e=this.getLocalText(),e=r(["<div class='",this.className.container,"'>"," <a class='",this.className["file-button-upload"],"' ",'title="',e,'">'," ",this["_html-img"]()," ",'<input type="file" >'," ","<span>",e,"</span>"," </a>"," ",this["_html-list"](this.options.value),"</div>"].join(""));return this["_bind-applying-event"](e),e},view:function(){return r(["<div class='",this.className.container," ",this.className.view,"'>",this["_html-list"](this.options.value,!0),"</div>"].join(""))},"_html-img":function(){var e=this.builder.getImage("file-upload.svg");return["<img class='",this.className.img,"' ","src='",e,"'"," />"].join("")},"_html-list":function(e,t){return["<div class='",this.className.list,"'>",this["_html-list-items"](e,t),"</div>"].join("")},"_html-list-items":function(e,t){var i=[],n=this;return e&&0<e.length&&_.forEach(e,function(e){i.push(["<div class='",n.className["list-item"],"'>"," <span class='",n.className.img,"'",">","<img src='",n.getImage(e.icon||n.source.icon),"' />","</span>"," <span class='",n.className["list-item-name"],"'",">"," <a title='",e.name,"'","href='",e.src,"' ",'target="_blank"',">",e.name,"</a>"," </span>"," <span>",e.size,"</span>",t?"":[" <span class='",n.className["list-item-button-delete"],"'>",n.getLocalText("delete"),"</span>"].join(""),"</div>"].join(""))}),i.join("")},getImage:function(e){return e&&-1!==e.indexOf("/")?e:this.builder.getImage(e)},"_bind-applying-event":function(o){var a=this;o.find('input[type="file"]').fileupload({url:this.source.uploadUrl||this.builder.options.url.fileupload,done:function(e,t){var i,t=t.result||[],n=a.options.value||[];if(_.isArray(t)&&(i=a["_html-list-items"](t,!0),o.find("."+a.className.list).append(i)),n=_.flatten(n.push(t)),a.options.value=n,"function"==typeof a.source.onUpload)try{a.source.onUpload.call(a,t)}catch(e){console.error("formbuilder file onUpload function error!")}},error:function(e,t){},complete:function(e,t){}}),o.on("click","."+a.className["list-item-button-delete"],function(){var t=r(this).closest("."+a.className["list-item"]),i=t.index("."+a.className["list-item"]),n=a.options.value,o=n[i],e=r.extend(!0,{},a.source.deleteParams||{},{id:o.id});r.post(a.source.deleteUrl,e,function(e){if(console.warn("formbuilder file delete success"),t.remove(),_.remove(n,function(e,t){return!t===i}),"function"==typeof a.source.onDelete)try{a.source.onDelete.call(a,o)}catch(e){console.error("formbuilder file onDelete function error!")}}).success(function(e){console.log("second success")}).error(function(e){console.log("error")}).complete(function(e){console.log("complete")})})},getValue:function(){return this.options.value},className:{container:"formbuilder-control-file",view:"formbuilder-control-file-view","file-button-upload":"formbuilder-control-file-button-upload",img:"formbuilder-control-file-img",list:"formbuilder-control-file-list","list-item":"formbuilder-control-file-list-item","list-item-name":"formbuilder-control-file-list-item-name","list-item-button-delete":"formbuilder-control-file-list-item-delete"},options:{label:"",value:[]},property:{value:{hidden:!0},"font-family":{hidden:!0},"font-size":{hidden:!0},"font-weight":{hidden:!0,update:function(e){}},"font-style-italic":{hidden:!0,update:function(e){}},"text-decoration-underline":{hidden:!0,update:function(e){}},color:{hidden:!0,update:function(e){}},height:{hidden:!0},width:{hidden:!0,update:function(){this.container.css({width:"100%"})}},"text-align":{hidden:!0},align:{hidden:!0,update:function(){}},"vertical-align":{hidden:!0},url:{hidden:!0},cascade:{hidden:!0}}})}(jQuery,_),function(s){s.formbuilder.toolbox.add("fileupload",{title:"fileupload",icon:"file-upload.svg",source:{icon:{pdf:"",doc:"",docx:"",xls:"",xlsx:"",ppt:"",pptx:"",txt:"",png:"image.svg",jpg:"image.svg",jpeg:"image.svg",bmp:"image.svg",other:"file.png"},renderType:"",files:{},xhries:{},onUpload:function(){}},keepPattern:!0,applying:function(){this.source.renderType="applying";var e=this.renderButton(),e=`<div class="${this.className.container}">
|
|
${e}
|
|
${this.renderFileList()}
|
|
</div>`,e=s(e);return this.setEvents(e),e},view:function(){this.source.renderType="view";var e=`<div class="${this.className.container}">
|
|
${this.renderFileList()}
|
|
</div>`,e=s(e);return this.setEvents(e),e},renderButton:function(){return`<div>
|
|
<button class="file-upload-button">
|
|
<span>${this.getLocalText("fileUpload")}</span>
|
|
<input multiple="multiple" class="file-upload-input" type="file" accept="${this.accept||""}" />
|
|
</button>
|
|
|
|
</div>`},renderFileList:function(){return`<div class="file-upload-filelist">
|
|
${this.options.value.map(e=>this.renderFileItem(e)).join("")}
|
|
</div>`},renderFileItem:function(e){var{icon:t,renderType:i}=this.source,{state:n,progress:o,fileType:a,fileShowName:r,fileSize:l,fileId:s}=e,c="file-upload-item"+(n&&" file-upload-item-"+n||""),o="view"!==i&&(void 0!==o||n)?"":"hidden",i="applying"!==i?"hidden":"",n="error"===n?"":"hidden",d=this.getStateImage(e),a=this.getImage(t[a]||t.other),t=this.getImage("recovery.png"),u=this.getImage("remove.png"),p=r+"_"+l,h=this.getFileSrc(e);return`<div class="${c}" data-identification="${p}">
|
|
<div class="file-content">
|
|
<div class="file-content-icon">
|
|
<img src="${a}" />
|
|
</div>
|
|
<div></div>
|
|
<a class="file-content-name" ${s?`href="${h}"`:""} target="_black" title="${r}">
|
|
${r}
|
|
</a>
|
|
<div class="file-content-size">${this.zSize(l)}</div>
|
|
<div ${i} class="file-content-operation file-content-icon">
|
|
<img ${n} class="file-recovery" src="${t}" alt="重传" title=${this.getLocalText("Retransmission")} />
|
|
<img class="file-delete" src="${u}" alt="删除" title=${this.getLocalText("delete")} />
|
|
</div>
|
|
</div>
|
|
<div ${o}>
|
|
<div class="file-progress-container">
|
|
${this.renderFileProgress(e)}
|
|
<img class="file-state-icon" src="${d}" />
|
|
</div>
|
|
</div>
|
|
</div>`},renderFileProgress:function(e){e=e.progress;return`<div class="file-progress-content">
|
|
<div class="file-progress">
|
|
<div class="progress" style="width: ${e}%;"></div>
|
|
</div>
|
|
<div class="file-progress-text">${e}%</div>
|
|
</div>`},setEvents:function(e){const o=this;e.find('input[type="file"]').change(function(e){let t=o.accept?.split(",")||[],i=e.target.files;0<t.length&&(i=Array.prototype.filter.call(e.target.files,({type:e})=>{let i=!1,[n,o]=e.split("/");return t.forEach(e=>{var[e,t]=e.trim().split("/");i=i||n===e&&(t===o||"*"===t)}),i}));for(let e=0;e<i.length;e++){var n=i[e];o.getFileItemDom(n)||o.uploadFile(n)}e.target.value=null}),e.find(".file-upload-filelist").click(function(e){var t,i=e.target.classList,n=o.queryItemByClickDom(e.target);if(i.contains("file-recovery")&&(t=o.source.files[n.fileShowName+"_"+n.fileSize],n&&t&&(n.state="loading",n.progress=0,o.getUploadUrl(t))),i.contains("file-delete")){if(!n)return!1;n.fileId&&"success"===n.state&&o.deleteFile(n),o.deleteFileItem(n)}if(i.contains("file-content-name")){if(!n.fileId)return e.preventDefault(),!1;-1!==["png","jpeg","jpg","bmp"].indexOf(n.fileType)&&(e.preventDefault(),Viewer.open(o.getFileSrc(n)))}})},uploadFile:function(e){this.addFileItem(e),this.getUploadUrl(e)},getUploadUrl:function(i){var n=this;const{token:o,uploadUrl:e,appCode:t,filePath:a,volumeCode:r}=this.source;var l=s.ajax({context:this,url:e,type:"POST",dataType:"json",contentType:"application/json;charset=UTF-8",data:JSON.stringify({appCode:t,filePath:a,volumeCode:r,fileShowName:i.name,fileSize:i.size,fileType:i.fileType}),beforeSend:function(e,t){e.setRequestHeader("Authorization",o)},success:function(e){if(200!==e.code)return this.updateFileItem(i,{state:"error",errorMsg:e.msg||n.getLocalText("getUrlError")}),!1;this.putFileByTemplateUrl(e,i)},error:function(e,t){this.updateFileItem(i,{state:"error",errorMsg:n.getLocalText("getUrlError")})}});this.source.xhries[i.name+"_"+i.size]=l},putFileByTemplateUrl:function(i,n){const o=this;let a=document.createElement("input");a.type="file",a.name="file",s(a).fileupload({url:i.data.templateUrl,type:"PUT",data:n,progress:function(e,t){t=+(t.loaded/t.total*100).toFixed(2),t=Math.min(99.99,t);o.updateFileProgress(n,t)},done:function(e,t){o.uploadFinished(Object.assign(i.data,{fileSize:n.size,fileType:n.fileType}),n),a=null},fail:function(e,t){o.updateFileItem(n,{state:"error",errorMsg:this.getLocalText("transferError")}),a=null}});var e=s(a).fileupload("send",{files:[n]});this.source.xhries[n.name+"_"+n.size]=e},uploadFinished:function(t,i){var n=this,e=s.ajax({context:this,url:this.source.uploadFinishedUrl,type:"PUT",dataType:"json",contentType:"application/json;charset=UTF-8",data:JSON.stringify(t),beforeSend:function(e){e.setRequestHeader("Authorization",this.source.token)},success:function(e){if(200!==e.code)return this.updateFileItem(i,{state:"error",errorMsg:e.msg||n.getLocalText("storageFailed")}),!1;this.updateFileItem(i,{progress:100,state:"success",...t})},error:function(e,t){this.updateFileItem(i,{state:"error",errorMsg:n.getLocalText("storageFailed")})}});this.source.xhries[i.name+"_"+i.size]=e},deleteFile:function(e){delete this.source.files[e.fileShowName+"_"+e.fileSize],s.ajax({context:this,url:this.source.batchRollbackUrl,type:"POST",dataType:"json",contentType:"application/json;charset=UTF-8",beforeSend:function(e){e.setRequestHeader("Authorization",this.source.token)},data:JSON.stringify({fileId:e.fileId,lastVersionFileId:e.lastVersionFileId||null})})},getValueItem:function(t){return this.options.value.find(e=>e.fileShowName===t.name&&e.fileSize===t.size)},addFileItem:function(e){var{name:t,size:i,type:n}=e,o=t.split("."),o=(e.fileType=o.length&&o.slice(-1)[0]||n||"",{fileShowName:t,fileSize:i,fileType:e.fileType,progress:0,state:"progress"});return this.source.files[e.name+"_"+e.size]=e,this.options.value.push(o),this.getFileListJqDom().append(this.renderFileItem(o)),o},deleteFileItem:function(t){var e=this.options.value.findIndex(function(e){return e.fileShowName===t.fileShowName&&e.fileSize===t.fileSize}),i=t.fileShowName+"_"+t.fileSize,e=(-1!==e&&this.options.value.splice(e,1),this.source.xhries[i]);e&&1===e.readyState&&e.abort(),this.elem.find(`.file-upload-item[data-identification="${i}"]`).remove()},updateFileItem:function(e,t){let i=this.getValueItem(e);i=i||this.addFileItem(e),Object.assign(i,t),this.getFileItemDom(e).outerHTML=this.renderFileItem(i)},updateFileProgress:function(e,t){let i=this.getValueItem(e);i=i||this.addFileItem(e),Object.assign(i,{progress:t}),s(this.getFileItemDom(e)).find(".file-progress-content")[0].outerHTML=this.renderFileProgress(i)},queryItemByClickDom:function(e){e=s(e).parents(".file-upload-item")[0];if(e){const t=e.dataset.identification;return this.options.value.find(function(e){return e.fileShowName+"_"+e.fileSize===t})}},getFileListJqDom:function(){return this.elem.find(".file-upload-filelist")},getFileItemDom:function(e){e=this.container.find(`.file-upload-item[data-identification="${e.name}_${e.size}"]`);if(e.length)return e[0]},zSize:function(e){var t=Math.floor(Math.log(e)/Math.log(1024));return(e/Math.pow(1024,t)).toPrecision(3)+" "+["B","KB","MB","GB","TB","PB","EB","ZB","YB"][t]},getImage:function(e){return e&&-1!==e.indexOf("/")?e:this.builder.getImage(e)},getStateImage:function(e){let t="";switch(e.state){case"success":t="check.png";break;case"error":case"loading":t="remove.png";break;default:t="loading-.gif"}return this.getImage(t)},getFileSrc:function(e){return`${this.source.downloadUrl}eid=${e.fileId}&t=`+Date.now()},options:{label:"",value:[],"vertical-align":"top"},className:{container:"formbuilder-control-fileupload"},getValue:function(){return this.options.value},setValue:function(e){this.options.value=e},check:function(){return!this.options.value.some(e=>e.progress<100||"loading"===e.state||"error"===e.state)},property:{value:{hidden:!0},"font-family":{hidden:!0},"font-size":{hidden:!0},"font-weight":{hidden:!0,update:function(e){}},"font-style-italic":{hidden:!0,update:function(e){}},"text-decoration-underline":{hidden:!0,update:function(e){}},color:{hidden:!0,update:function(e){}},height:{hidden:!0,update:function(){this.container.css({height:"100%"})}},width:{hidden:!0,update:function(){this.container.css({width:"100%"})}},"text-align":{hidden:!0},align:{hidden:!0,update:function(){}},"vertical-align":{hidden:!0},cascade:{hidden:!0}}})}(jQuery),function(s){"use strict";s.formbuilder.toolbox.add("link",{title:"link",icon:"link.svg",cache:{indent:[]},keepPattern:!0,applying:function(){return s(this.getListItems(this.options.value))},view:function(){return s(this.getListItems(this.options.value))},renderImg:function(){var e=this.builder.getImage("link.png");return["<img class='",this.className.img,"' ","src='",e,"'"," />"].join("")},renderList:function(e){return["<div class='",this.className.list,"'>",e,"</div>"].join("")},getListItems:function(e){var t=[];return t.push(["<div class='",this.className["list-item"],"' ","data-index='","'",">","<a title='","' href='",this.options.url,'\' target="blank">',e,"</a>","</div>"].join("")),t.join("")},bindViewEvent:function(e){var t=this;e.on("click","."+t.className["list-item"],function(){var e=s(this),e=Number(e.attr("data-index")),e=t.options.value[e];t.linkEvent(e)})},linkEvent:function(e){var t=this.options.onclick;"function"==typeof(t="string"==typeof t?window[t]:t)&&t.call(this.builder.elem,e)},getImage:function(e){return e&&-1!==e.indexOf("/")?e:this.builder.getImage(e)},getValue:function(){return this.options.value},className:{container:"formbuilder-control-link",list:"formbuilder-control-link-list","list-item":"formbuilder-control-link-item"},options:{label:"",value:[],width:"100%","vertical-align":"top",color:"#3555BC","text-decoration-underline":!0},property:{value:{text:"value",hidden:!1,type:"textarea",after:["font-size"],designUpdate:function(e,t,i){var a,r,l;this.property.value.update;_.trim(e)?this.elem.css({opacity:1,filter:"Alpha(opacity=100)"}):(e=this.title,this.elem.css({opacity:.3,filter:"Alpha(opacity=30)"})),e=e.split("\n"),a=[],r=i["word-vertical"],(l=this).cache.indent=[],_.each(e,function(e){var t,i,n,o;r&&(e=(e=_.map(e.split(""),function(e){return e+"<br/>"})).join("")),t=s.trim(e),n=(o=(i=e.replace(t,"[--]")).split("[--]"))[0]?o[0].length:0,o=o[1]?o[1].length:0,l.cache.indent.push({left:n,right:o}),e=i.replace(/ /g,"<span class='"+l.className.space+"'></span>").replace("[--]",t),a.push('<p style="margin:0;">'+e+"</p>")}),this.elem.html(a.join("")),r?this.elem.addClass(this.className.vertical):this.elem.removeClass(this.className.vertical)}},url:{type:"textbox"},"font-family":{hidden:!0},"font-size":{hidden:!0},"font-weight":{hidden:!0},"font-style-italic":{hidden:!0},"text-decoration-underline":{hidden:!0},height:{hidden:!0},width:{hidden:!0},"text-align":{hidden:!0},align:{hidden:!0},"vertical-align":{hidden:!0},overflow:{hidden:!0},"relation-position":{hidden:!0},"extension-direction":{hidden:!0},readonly:{hidden:!0},required:{hidden:!0},cascade:{hidden:!0}}})}(jQuery,_),function(a){"use strict";a.formbuilder.toolbox.add("multipleselectlabel",{title:"multipleSelect",icon:"muli-select-label.svg",applying:function(){var e=a(["<div class='",this.className.container," ",this.className.view,"'>",this.renderRemoveAll(),"</div>"].join(""));return this.bindViewEvent(e),e},view:function(){for(var e,t=this.options.value||[],i=[],n=0,o=t.length;n<o;n++)e=t[n],i.push(e.text);return a("<label class='"+this.className.view+"'>"+i.join("; ")+"</label>")},renderRemoveAll:function(){return this.renderItem({text:"",value:"remove-all"},null,"remove-all")},renderImg:function(){var e=this.builder.getImage(this.icon);return["<img class='",this.className.img,"' ","src='",e,"'"," />"].join("")},renderList:function(){return["<div class='",this.className.list,"'>","</div>"].join("")},renderItem:function(e,t,i){return["<div class='",this.className[i],"' ","data-index='",t,"'",">"," <a href='javascript:void(0);' >",e.text,"</a>"," <span class='",this.className["list-item-remove"],"'>x</span>","</div>"].join("")},renderListItems:function(){var i=[],e=this.options.value,n=this;this.elem.find("."+this.className["list-item"]).remove(),e&&0<e.length&&_.forEach(e,function(e,t){i.push(n.renderItem(e,t,"list-item"))}),this.elem.append(i.join(""))},bindViewEvent:function(){var t=this;this.container.on("click",function(e){var e=a(e.target);e.hasClass(t.className["list-item-remove"])?(e=e.parent()).hasClass(t.className["remove-all"])?t.removeAllEvent():t.removeItemEvent(e):t.selectEvent()})},removeAllEvent:function(){this.options.value=[],this.elem.find("."+this.className["list-item"]).remove()},removeItemEvent:function(e){e=Number(e.attr("data-index"));this.options.value.splice(e,1),this.renderListItems()},selectEvent:function(){var e=this.options.onclick,t=this.options.value,i=this;"function"==typeof(e="string"==typeof e?window[e]:e)&&e.call(this.builder.elem,t,function(e){i.options.value=e,i.renderListItems()})},getImage:function(e){return e&&-1!==e.indexOf("/")?e:this.builder.getImage(e)},getValue:function(){return this.options.value},className:{container:"formbuilder-control-multipleselectlabel",list:"formbuilder-control-multipleselectlabel-list","list-item":"formbuilder-control-multipleselectlabel-item","list-item-remove":"formbuilder-control-multipleselectlabel-item-remove","remove-all":"formbuilder-control-multipleselectlabel-remove-all",view:"formbuilder-control-multipleselectlabel-view"},options:{label:"",value:[],width:"100%"},property:{value:{hidden:!0,excludePattern:["design","view"],update:function(e){this.renderListItems()}},"font-family":{hidden:!0},"font-size":{hidden:!0,excludePattern:["view"]},"font-weight":{hidden:!0},"font-style-italic":{hidden:!0},"text-decoration-underline":{hidden:!0},height:{hidden:!0},width:{hidden:!0},"text-align":{hidden:!0},align:{hidden:!0},"vertical-align":{hidden:!0},overflow:{hidden:!0},onclick:{type:"textbox"}}})}(jQuery),function(e){"use strict";e.formbuilder.toolbox.add("datasetindex",{title:"datasetindex",icon:"datasetindex.svg",keepPattern:!0,applying(){return this._updateIndex(),e('<label class="formbuilder-control-label"> </label>')},view(){return this.applying()},updateIndex(e){this.elem?.html(e)},applyingRemove(){this._updateIndex()},_updateIndex(){let e=this.options,o=e.type,a=this.builder.workspace,i=e["dataset-block"],r=e.x,l=e.y;if(i){let e=a.getDatasetInfoById(i,a.datasetTemplate),n="vertical"==e.type,t=`${i}-${n?l:r}-datasetindex`;a[t]&&clearTimeout(a[t]),a[t]=setTimeout(()=>{var{datasets:e=[]}=a.getCurrentPageData(),{rows:e=[]}=e.find(e=>e?.id==i);e.forEach((e,t)=>{var e=e.find(e=>e?.type==o&&(n?e.y==l:e.x==r)),i=e?.x,e=e?.y;i&&e&&a.findControlObj(i,e)?.updateIndex?.(t+1)}),delete a[t]})}},options:{value:"",readonly:!0},property:{cascade:{hidden:!0}}})}(jQuery),function(i){"use strict";i.formbuilder.property._base={create:function(){},elem:null,language:"zh-CN",container:null,getLocalText:function(e){return(i.formbuilder.language[this.language]||i.formbuilder.language["zh-CN"]).property[e]||e||""},options:{name:"",value:""},display:"inline-block",bindEvent:function(){},updateEvent:function(){},getValue:function(){},setValue:function(e){},beforeInit(){}},i.formbuilder.property.add=function(e,t){t=i.extend(!0,{},this._base,t);this[e]=t}}(jQuery),function(s){"use strict";s.formbuilder.property.add("buttons",{create:function(){var e=this.options,t=this.builder.workspace.grid,i=e.prop,n=e.source,i=i.activeValueConver?.(e.value,t)||e.value;return s(["<div>",this.createItems(n,i),"</div>"].join(""))},createItems:function(e,t){var i,n,o=[];if(e){for(var a=0,r=e.length;a<r;a++)i=e[a],n="",0==a&&(n+=" first"),a==r-1&&(n+=" last"),o.push(this.createItem(i,t,n));return o.join("")}},createItem:function(e,t,i){var n=" ";return n+=this.className.item+" "+i,t===e.name?(e.selected=!0,n+=" "+this.className.active):e.selected=!1,['<div class="',n,'"',' name="" type="button" ',">",' <a title="',this.getLocalText(e.text),'">',' <img src="',this.builder.getImage(e.image),'" />'," </a>","</div>"].join("")},className:{item:"formbuilder-property-button",active:"formbuilder-property-button-active"},options:{},bindEvent:function(){var l=this;this.elem.on("click","."+l.className.item,function(){var e,t=s(this),i=t.index(),n=l.options,o=n.source;t.parent().find("."+l.className.item).removeClass(l.className.active),t.addClass(l.className.active);for(var a=0,r=o.length;a<r;a++)e=o[a],a===i?(n.value=e.name,e.selected=!0):e.selected=!1})},updateEvent:function(){return[{name:"click",filter:"."+this.className.item}]},getValue:function(){return this.options.value}})}(jQuery),function(e){"use strict";e.formbuilder.property.add("label",{create:function(){return e(["<label "," class='",this.options.className,"' title='",this.getLocalText(this.options.text||this.options.name),"' ",">",this.getLocalText(this.options.text||this.options.name),"</label>"].join(""))},options:{className:"formbuilder-property-label"}})}(jQuery),function(i){"use strict";i.formbuilder.property.add("textbox",{elem:null,options:{value:""},className:{textbox:"formbuilder-property-textbox"},template:function(e){return["<input type='textbox' class='",e.className,"' value='",e.value,"' />"].join("")},create:function(){var e=i(this.template({className:this.className.textbox,value:this.options.value})),t=this.options.source;return t&&(t.readonly&&e.attr("readonly","readonly"),t.placeholder&&e.attr("placeholder",this.getLocalText(t.placeholder))),e.on("keydown",function(e){e.stopPropagation()}),e},updateEvent:function(){return[{name:"change",filter:""}]},getValue:function(){return this.elem.val()},setValue:function(e){this.elem.val(e)}})}(jQuery,_),function(t){"use strict";t.formbuilder.property.add("textarea",{options:{className:"formbuilder-property-textarea",rows:4},create:function(){var e=t(["<textarea "," class='",this.options.className,"' ","rows='",this.options.rows,"'"," >",this.options.value," </textarea>"].join(""));return e.on("keydown",function(e){e.stopPropagation()}),e},getValue:function(){return this.elem.val()},updateEvent:function(){return[{name:"change",filter:""}]}})}(jQuery),function(s){"use strict";s.formbuilder.property.add("options",{display:"block",image:{delete:"delete.svg",add:"add.svg"},create:function(){var e=this.className,t=this.options,i=this.builder.getImage(this.image.add),n=s(`<div class="${e.wrap}"></div>`),t=this.createItems(t.value),e=`<div class="${e.actions}"><a class="${e.addOpt}" title="${this.getLocalText("addOption")}"><img src="${i}" /></a></div>`;return n.append([t,e]),n},createItems:function(e){var t=this.className,i=s(`<ul class="${t.options}"></ul>`),n=this;return(e=e&&0!==e.length?e:[{}]).forEach(e=>{e=n.createItem(e);i.append(e)}),i},createItem:function(o){var a=this.className,e={elems:[{name:"text",placeholder:"text"},{name:"value",placeholder:"value"}],...this.options.prop},t=e.elems,i=o.selected,e=e.hideSelect,n=this.builder.getImage(this.image.delete),r=s(`<li class="${a.option}"></li>`),e=e?"":`<input type="checkbox" class="${a.check}" ${o.selected?a.selected:""} ${i?'checked="true"':""} >`,l=s(`<div class="${a.content}"></div>`),i=`<a class="${a.remove}" title="${this.getLocalText("removeOption")}"><img src= "${n}" /></a>`;return t.forEach(e=>{var{name:e,placeholder:t,type:i="input"}=e,n=o[e]||"",i=s(`<${i} type="text" class="${a.input}" name="${e}" placeholder="${this.getLocalText(t)}">`);i.val(n),l.append(i)}),r.append([e,l,i])},bindEvent:function(){var e=this,t=this.elem;t.find("."+e.className.addOpt).on("click",function(){t.find("."+e.className.options).append(e.createItem({}))}),!1===this.multi&&t.on("click","."+e.className.check,function(){s(this).closest("."+e.className.option).siblings().find("."+e.className.check).each(function(){this.checked=!1})}),t.on("click","."+e.className.remove,function(){s(this).closest("."+e.className.option).remove()})},className:{wrap:"formbuilder-property-sortable-options-wrap",options:"formbuilder-property-sortable-options",option:"formbuilder-property-option",check:"formbuilder-property-check",remove:"formbuilder-property-option-remove",selected:"formbuilder-property-option-selected",content:"formbuilder-property-option-content",input:"formbuilder-property-option-input",actions:"formbuilder-property-option-actions",addOpt:"formbuilder-property-add-opt"},options:{value:[]},updateEvent:function(){return[{name:"change",filter:["input","textarea"]},{name:"click",filter:"."+this.className.remove}]},getValue:function(){var n=[],o=this.className,a="."+o.input,r=this.options.prop.hideSelect;return this.elem.find("."+this.className.option).each(function(){var e=s(this),i={},t=e.find(a);r||(i.selected=e.find("."+o.check)[0].checked),t.each(function(){var e=this.getAttribute("name"),t=this.value;i[e]=t}),n.push(i)}),n}})}(jQuery),function(h){"use strict";h.formbuilder.property.add("groupOptions",{display:"block",image:{delete:"delete.svg",add:"add.svg"},create:function(){var e=this.className,e=h(`<div class="${e.wrap}"></div>`),t=this.createGroup();return e.append(t),e},createGroup(){let s=this.className,e=this.options,{value:c={},prop:t={}}=e,i=t.groups||[],d=this.builder.getImage(this.image.add),u=this,p=[];return i.forEach((t,e)=>{let{name:i="",text:n="",hideAdd:o=!1}=t,a=h(`<div class="${s.group}" name="${i}" data-index="${e}">
|
|
<ul class="${s.options}"></ul>
|
|
${o?"":`<div class="${s.actions}">
|
|
<a class="${s.addOpt}" title="${this.getLocalText(n)}"><img src="${d}" /></a>
|
|
</div>`}
|
|
</div>`),r=a.children("ul"),l=c[i]||[{}];l.forEach(e=>{e=u.createItem(e,t);r.append(e)}),p.push(a)}),p},createItem:function(o,e){var a=this.className,e={elems:[{name:"text",placeholder:"text"},{name:"value",placeholder:"value"}],...e},t=e.hideRemove,e=e.elems,i=this.builder.getImage(this.image.delete),n=h(`<li class="${a.option}"></li>`),r=h(`<div class="${a.content}"></div>`),t=t?"":`<a class="${a.remove}" title="${this.getLocalText("removeOption")}"><img src= "${i}" /></a>`;return e.forEach(e=>{var{name:e,placeholder:t,type:i="input"}=e,n=o[e]||"",i=h(`<${i} type="text" class="${a.input}" name="${e}" placeholder="${this.getLocalText(t)}">`);i.val(n),r.append(i)}),n.append([r,t])},bindEvent:function(){var i=this,e=this.elem;e.find("."+i.className.addOpt).on("click",function(){var e=i.className,e=h(this).closest("."+e.group),t=+e.attr("data-index"),t=i.options.prop?.groups?.[t];e.find("."+i.className.options).append(i.createItem({},t))}),e.on("click","."+i.className.remove,function(){h(this).closest("."+i.className.option).remove()})},className:{wrap:"formbuilder-property-sortable-options-wrap",options:"formbuilder-property-sortable-options",option:"formbuilder-property-option",check:"formbuilder-property-check",remove:"formbuilder-property-option-remove",selected:"formbuilder-property-option-selected",content:"formbuilder-property-option-content",input:"formbuilder-property-option-input",actions:"formbuilder-property-option-actions",addOpt:"formbuilder-property-add-opt",group:"formbuilder-property-option-group"},options:{value:[]},updateEvent:function(){return[{name:"change",filter:["input","textarea"]},{name:"click",filter:"."+this.className.remove}]},getValue:function(){let i={},e=this.className,t=this.elem.find("."+e.group),o="."+e.option,a="."+e.input;return t.each(function(){let e=h(this),t=e.attr("name"),n=i[t];i[t]||(n=i[t]=[]),e.find(o).each(function(){let e=h(this),i={},t=e.find(a);t.each(function(){var e=this.getAttribute("name"),t=this.value;i[e]=t}),n.push(i)})}),i}})}(jQuery),function(n){"use strict";n.formbuilder.property.add("selectImage",{create:function(){var e=this.options,t=e.source.text,i=e.source.image,e=e.value;return n(this.createItem(t,i,e))},createItem:function(e,t,i){let n=this.className.item;return!0===i&&(n+=" "+this.className.active),['<div class="',n,'"',' name="" type="button" ',">",' <a title="',this.getLocalText(e),'">',' <img src="',this.builder.getImage(t),'" />',' <input type="file" accept="',"image/*",'" >'," </a>","</div>"].join("")},className:{item:"formbuilder-property-fileupload",active:"formbuilder-property-fileupload-active",error:"formbuilder-property-fileupload-error"},options:{},bindEvent:function(){var n=this,o=this.elem;o.find('input[type="file"]').on("change",function(e){var i=this.files[0],{type:t=""}=i;if(this.value="",-1==t.indexOf("image/"))o.find("a").addClass(n.className.error);else{let t=new FileReader;t.addEventListener("load",function(){var e=t.result;n.options.value=e,o.find("a").removeClass(n.className.error),o.trigger("finishUpload")},!1),i&&t.readAsDataURL(i)}})},updateEvent:function(){return[{name:"finishUpload",filter:""}]},getValue:function(){return this.options.value}})}(jQuery),function(n){"use strict";n.formbuilder.property.add("bool",{create:function(){var e,t,i;if(this.options.source)return e=(i=this.options).source.text,t=i.source.image,i=i.value,n(this.createItem(e,t,i));console.warn("please config the source")},createItem:function(e,t,i){var n=this.className.item;return!0===i&&(n+=" "+this.className.active),this.template({className:{item:n},text:this.getLocalText(e),image:this.builder.getImage(t)})},template:function(e){return["<div class='",e.className.item,"' name='' type='button' >"," <a title='",e.text,"'>"," <img src='",e.image,"' />"," </a>","</div>"].join("")},className:{item:"formbuilder-property-bool",active:"formbuilder-property-bool-active"},options:{},bindEvent:function(){var i=this;this.elem.on("click",function(){var e=n(this),t=i.options;!0===t.value?(t.value=!1,e.removeClass(i.className.active)):(t.value=!0,e.addClass(i.className.active))})},updateEvent:function(){return[{name:"click",filter:""}]},getValue:function(){return this.options.value}})}(jQuery,_),function(n){"use strict";n.formbuilder.property.add("fileupload",{create:function(){var e=this.options,t=e.source.text,i=e.source.image,e=e.value;return n(this.createItem(t,i,e))},createItem:function(e,t,i){var n=this.className.item;return!0===i&&(n+=" "+this.className.active),['<div class="',n,'"',' name="" type="button" ',">",' <a title="',this.getLocalText(e),'">',' <img src="',this.builder.getImage(t),'" />',' <input type="file" >'," </a>","</div>"].join("")},className:{item:"formbuilder-property-fileupload",active:"formbuilder-property-fileupload-active",error:"formbuilder-property-fileupload-error"},options:{},bindEvent:function(){var i=this,n=this.elem;n.find('input[type="file"]').fileupload({url:this.options.source.url||this.builder.options.url.imageupload,done:function(e,t){i.options.value=t.result,n.trigger("finishUpload"),n.find("a").removeClass(i.className.error)},error:function(e,t){n.find("a").addClass(i.className.error)},complete:function(e,t){}})},updateEvent:function(){return[{name:"finishUpload",filter:""}]},getValue:function(){return this.options.value}})}(jQuery),function(c){"use strict";c.formbuilder.property.add("colorpicker",{create:function(){var e=this.template({className:{container:this.className.container,color:this.className.color,picker:this.className.picker}});return c(e)},template:function(e){return["<div class='",e.className.container,"'>"," <div class='",e.className.color,"'><span></span></div>"," <div class='",e.className.picker,"'></div>","</div>"].join("")},className:{container:"formbuilder-property-colorpicker",color:"formbuilder-property-colorpicker-color",picker:"formbuilder-property-colorpicker-picker"},options:{},bindEvent:function(){var a=this.elem,r=a.find("."+this.className.picker),l=a.find("."+this.className.color),e=c.formbuilder.getValue(this.options.value),s=this,t=!1,e=e||this.options.source.defaultValue||"#333333";l.css("background",e),l.click(function(){t||(t=!0,r.colpick({flat:!0,layout:"hex",color:e.value||e,submitText:s.getLocalText("ok"),onSubmit:function(e,t,i,n){var o="#"+t;c(n).css("background-color",o),l.css("background","#"+t),r.hide(),l.removeAttr("data-show"),s.options.value=o,a.trigger("colorchange")}})),l.attr("data-show")?(r.hide(),l.removeAttr("data-show")):(r.show(),l.attr("data-show",!0))}),r.on("keydown","input",function(e){e.stopPropagation()})},updateEvent:function(){return[{name:"colorchange",filter:""}]},getValue:function(){return this.options.value}})}(jQuery,_),function(a,o){"use strict";a.formbuilder.property.add("combox",{elem:null,options:{value:""},image:{arrowsdown:"arrows-down.svg"},className:{combox:"formbuilder-property-combox",textbox:"formbuilder-property-combox-textbox",arrowsdown:"formbuilder-property-combox-arrowsdown",items:"formbuilder-property-combox-items",item:"formbuilder-property-combox-item"},template:{item:function(e){return["<div class='",e.className,"'>"," <a title='",e.text,"' data-index='",e.index,"'>"," ",e.text," </a>","</div>"].join("")},main:function(e){return["<div class='",e.className.combox,"'>"," <input type='textbox' class='",e.className.textbox,"' value='",e.value,"' ",e.readonly," />"," <span class='",e.className.arrowsdown,"'>"," <img src='",e.icon,"'/>"," </span>"," ",e.items,"</div>"].join("")}},create:function(){var e=this.options,t=e.readonly,i=e.source,n=e.value||"",e=this.image.arrowsdown;return"object"!=typeof n&&(n={text:n||"",value:n||""},o.each(i,function(e){e.value===n.value&&(n.text=e.text)})),t=this.template.main({className:{combox:this.className.combox,textbox:this.className.textbox,arrowsdown:this.className.arrowsdown},value:this.getLocalText(n.text),readonly:t?"readonly='readonly'":"",icon:this.builder.getImage(e),items:this.createItems(i)}),(e=a(t)).on("keydown",function(e){e.stopPropagation()}),e},createItems:function(e){var t=[];if(t.push(["<div class='",this.className.items,"'>"].join("")),e instanceof Array&&0<e.length)for(var i=0,n=e.length;i<n;i++)t.push(this.createItem(e[i],i));return t.push("</div>"),t.join("")},createItem:function(e,t){return this.template.item({className:this.className.item,text:this.getLocalText(e.text)||e.text,index:t})},bindEvent:function(){var i=this,e=this.elem,n=e.find("."+this.className.items),o=e.find("."+this.className.textbox);e.on("mousedown","."+this.className.arrowsdown,function(e){var t;n.attr("data-open")?(i.hideSubContent(),n.removeAttr("data-stop-blur-event")):(o[0].focus(),n.attr("data-stop-blur-event",!0),i.showSubContent(),(t=n.attr("data-setTimeoutId"))&&clearTimeout(t),t=setTimeout(function(){n.attr("data-open")&&n.removeAttr("data-stop-blur-event")},200),n.attr("data-setTimeoutId",t)),e.preventDefault()}),n.on("click","."+this.className.item+">a",function(){var e=a(this).attr("data-index"),e=i.options.source[e];" "==(i.options.value=e).text&&(e.text=""),i.hideSubContent(),o.val(i.getLocalText(e.text)),i.update()}),o.on("change",function(){var e=a(this).val();i.options.value=e,i.hideSubContent(),i.update()}),o.on("blur",function(e){setTimeout(function(){n.attr("data-stop-blur-event")?n.removeAttr("data-stop-blur-event"):i.hideSubContent()},250)}),(window.ActiveXObject||"ActiveXObject"in window)&&n.on("mousedown click",function(e){n.attr("data-stop-blur-event",!0),setTimeout(function(){o[0].focus()},1)})},showSubContent:function(){var e=this.elem.find("."+this.className.items);e.show(),e.attr("data-open",!0)},hideSubContent:function(){var e=this.elem.find("."+this.className.items);e.hide(),e.removeAttr("data-open")},update:function(){this.elem.trigger("comboxUpdate")},updateEvent:function(){return[{name:"comboxUpdate"}]},getValue:function(){var e=this.options.value;return e=o.isObject(e)?e.value:e}})}(jQuery,_),function(i){"use strict";i.formbuilder.contextmenu._base={language:"zh-CN",getLocalText:function(e){return(i.formbuilder.language[this.language]||i.formbuilder.language["zh-CN"]).contextmenu[e]||e||""},targetType:null,text:null,image:null,checking:function(e,t){},fn:function(e,t){}},i.formbuilder.contextmenu.add=function(e,t){this[e]=i.extend(!0,{type:e},this._base,t)}}(jQuery),function(l,s){"use strict";l.formbuilder.contextmenu.add("merge",{text:"merge",targetType:"cells",image:"merge-cells.png",checking:function(e,t){var i,n,o=t.getSelected();if(1<o.length)for(var a=0,r=o.length;a<r;a++)if(n=l(o[a]),i=l.formbuilder.getPosition(e),n=l.formbuilder.getPosition(n),s.isEqual(i,n))return!0;return!1},fn:function(e,t){var i=t.getSelected();t.mergeCells(i)}})}(jQuery,_),function(p,h){"use strict";p.formbuilder.contextmenu.add("canel-merge",{text:"canel-merge",targetType:"cells",image:"split-cells.png",checking:function(e,t){var i,n,o,a,r,l,s=t.getSelected(),c=p.formbuilder.getPosition(e);if(1<s.length){for(var d=0,u=s.length;d<u;d++)i=p(s[d]),l=p.formbuilder.getPosition(i),h.isEqual(c,l)&&(r=!0),n=parseInt(i.attr("colspan")||1),o=parseInt(i.attr("rowspan")||1),(1<n||1<o)&&(a=!0);if(r&&a)return!0}else if(1===e.length&&(n=parseInt(e.attr("colspan")||1),o=parseInt(e.attr("rowspan")||1),1<n||1<o))return!0;return!1},fn:function(e,t){var i=t.getSelected();t.cancelMergeCells(i,e)}})}(jQuery,_),function(){"use strict";jQuery.formbuilder.contextmenu.add("cut",{targetType:"control",text:"cut",image:"cut.png",checking:function(e,t){return 0!==t.getSelectedControl().length},fn:function(e,t){t.cutControls()}})}(),function(){"use strict";jQuery.formbuilder.contextmenu.add("copy",{targetType:"control",text:"copy",image:"copy.png",checking:function(e,t){return 0!==t.getSelectedControl().length},fn:function(e,t){t.copyControls()}})}(),function(){"use strict";jQuery.formbuilder.contextmenu.add("remove",{targetType:"control",text:"remove",image:"remove.png",checking:function(e,t){return 0!==t.getSelectedControl().length},fn:function(e,t){t.removeControls()}})}(),function(n){"use strict";n.formbuilder.contextmenu.add("paste",{text:"paste",targetType:"cells",image:"paste.png",checking:function(e,t){var i=t.cache,t=t.getSelected();return(1!==t.length||-1!==(t=n.formbuilder.getPosition(n(t[0]))).x&&-1!==t.y)&&(i["cut-control"]||i["copy-control"])},fn:function(e,t){t.pasteControls()}})}(jQuery),function(i){"use strict";i.formbuilder.contextmenu.add("insert-row",{text:"insert-row",targetType:"cells",image:"insert-row.png",checking:function(e,t){return 1===t.getSelected().length&&-1===i.formbuilder.getPosition(e).y},fn:function(e,t){1===t.getSelected().length&&(e=i.formbuilder.getPosition(e),t.insertRows(e.x,1))}})}(jQuery,_),function(i){"use strict";i.formbuilder.contextmenu.add("insert-column",{text:"insert-column",targetType:"cells",image:"insert-column.png",checking:function(e,t){return 1===t.getSelected().length&&-1===i.formbuilder.getPosition(e).x},fn:function(e,t){1===t.getSelected().length&&(e=i.formbuilder.getPosition(e),t.insertColumns(e.y,1))}})}(jQuery,_),function(i){"use strict";i.formbuilder.contextmenu.add("remove-column",{text:"remove-column",targetType:"cells",image:"remove-column.png",checking:function(e,t){return 1===t.getSelected().length&&-1===i.formbuilder.getPosition(e).x},fn:function(e,t){1===t.getSelected().length&&(e=i.formbuilder.getPosition(e),t.removeColumns(e.y))}})}(jQuery,_),function(i){"use strict";i.formbuilder.contextmenu.add("remove-row",{text:"remove-row",targetType:"cells",image:"remove-row.png",checking:function(e,t){return 1===t.getSelected().length&&-1===i.formbuilder.getPosition(e).y},fn:function(e,t){1===t.getSelected().length&&(e=i.formbuilder.getPosition(e),t.removeRows(e.x))}})}(jQuery,_),function(i){"use strict";i.formbuilder.menu._base={create:function(){},elem:null,language:"zh-CN",container:null,getLocalText:function(e){return(i.formbuilder.language[this.language]||i.formbuilder.language["zh-CN"]).menu[e]||e||""},options:{name:"",value:""},bindEvent:function(){},updateEvent:function(){},update:function(){},getValue:function(){return this.options.value},setValue:function(e){},setActive:function(e){}},i.formbuilder.menu.add=function(e,t){t=i.extend(!0,{},this._base,t);this[e]=t}}(jQuery),function(n){"use strict";n.formbuilder.menu.add("button",{create:function(){var e=this.options,t=e.text,i=e.image,e=e.value;return n(this.createItem(t,i,e))},createItem:function(e,t,i){var n=this.className.item;return!0===i&&(n+=" "+this.className.active),['<div class="',n,'"',' name="" type="button" ',">",' <a title="',this.getLocalText(e),'">',' <img class="',this.className.image,'"',' src="',this.builder.getImage(t),'" />'," </a>","</div>"].join("")},className:{item:"formbuilder-menu-button",image:"formbuilder-menu-button-image",active:"formbuilder-menu-button-active"},options:{},bindEvent:function(){var n=this;this.elem.find(">a").on("click",function(){var e=n.options,t=e.value,i=null;!0===t?i=e.value=!1:!1===t&&(i=e.value=!0),n.setActive(i),n.update()})},updateEvent:function(){return[{name:"buttonUpdate"}]},update:function(){this.elem.trigger("buttonUpdate")},updateImage:function(e){this.elem.find(">a").attr("title",this.getLocalText(this.options.text)),this.elem.find(">a img."+this.className.image).attr("src",this.builder.getImage(e))},setActive:function(e){var t=this.elem;!0===e?t.addClass(this.className.active):!1===e&&t.removeClass(this.className.active)}})}(jQuery),function(n){"use strict";n.formbuilder.menu.add("image",{create:function(){var e=this.options,t=e.text,i=e.image,e=e.value;return n(this.createItem(t,i,e))},createItem:function(e,t,i){var n=this.className.item;return!0===i&&(n+=" "+this.className.active),['<div class="',n,'"',' name="" type="button" ',">",' <a title="',this.getLocalText(e),'">',' <img src="',this.builder.getImage(t),'" />',' <input type="file" >'," </a>","</div>"].join("")},className:{item:"formbuilder-menu-image",active:"formbuilder-menu-image-active",error:"formbuilder-menu-image-error"},options:{},bindEvent:function(){var i=this,n=this.elem;n.find('input[type="file"]').fileupload({url:this.options.url||this.builder.options.url.imageupload,done:function(e,t){i.options.value=t.result,i.update(),n.find("a").removeClass(i.className.error)},error:function(e,t){n.find("a").addClass(i.className.error)},complete:function(e,t){}})},update:function(){this.elem.trigger("imageUpdate")},updateEvent:function(){return[{name:"imageUpdate",filter:""}]}})}(jQuery),function(d,t){"use strict";d.formbuilder.menu.add("combox",{create:function(){let e=this.options,t=this.getLocalText(e.name),i=this.builder.elem,n=e.readonly,o=e.value?.text||"",a=e.image.arrowsdown,r=e.items,l,s=e.width||"",c;return s=s&&"style='width:"+s+"px'",c=["<div class='",this.className.combox,"' ","title='",t,"'",">"," <input type='textbox' ","class='",this.className.textbox,"' ","value='",o,"' ",n?"readonly='readonly'":""," ",s,"/>"," <span class='",this.className.arrowsdown,"'>"," <img src='",this.builder.getImage(a),"'","/>"," </span>"," ","</div>"].join(""),l=d(this.createItems(r)),i.append(l),this.$items=l,d(c)},createItems:function(e){var t=[];if(t.push(["<div class='",this.className.items,"'>"].join("")),e instanceof Array&&0<e.length)for(var i=0,n=e.length;i<n;i++)t.push(this.createItem(e[i],i));return t.push("</div>"),t.join("")},createItem:function(e,t){return["<div class='",this.className.item,"'",">"," <a title='",e.text,"' ","data-index='",t,"' ",">"," ",e.text," </a>","</div>"].join("")},className:{combox:"formbuilder-menu-combox",textbox:"formbuilder-menu-combox-textbox",arrowsdown:"formbuilder-menu-combox-arrowsdown",items:"formbuilder-menu-combox-items",item:"formbuilder-menu-combox-item"},options:{image:{arrowsdown:"arrows-down.png"}},bindEvent:function(){var i=this,e=this.elem,n=this.$items,o=e.find("."+this.className.textbox);e.on("mousedown","."+this.className.arrowsdown,function(e){var t;n.attr("data-open")?(i.hideSubContent(),n.removeAttr("data-stop-blur-event")):(o[0].focus(),n.attr("data-stop-blur-event",!0),i.showSubContent(),(t=n.attr("data-setTimeoutId"))&&clearTimeout(t),t=setTimeout(function(){n.attr("data-open")&&n.removeAttr("data-stop-blur-event")},200),n.attr("data-setTimeoutId",t)),e.preventDefault()}),n.on("mousedown","."+this.className.item+">a",function(){var e=d(this).attr("data-index"),e=i.options.items[e];i.options.value=e.value,i.hideSubContent(),o.val(e.text),i.update()}),o.on("change",function(){var e=d(this).val();i.options.value=e,i.hideSubContent(),i.update()}),o.on("blur",function(){setTimeout(function(){n.attr("data-stop-blur-event")?n.removeAttr("data-stop-blur-event"):i.hideSubContent()},0)}),(window.ActiveXObject||"ActiveXObject"in window)&&n.on("mousedown click",function(e){n.attr("data-stop-blur-event",!0),setTimeout(function(){o[0].focus()},1)})},showSubContent:function(){let e=this.$items,t=this.elem,i=this.builder.elem,n=this.builder.workspace.elem,o=t.height(),{left:a,top:r}=i.offset(),{left:l,top:s}=t.offset(),c=n.offset()["left"],d=e.outerWidth(),u=n.outerWidth(),p;(p=l-a+2)+d>c+u&&(p=c+u-d-5),e.css({left:p+"px",top:s-r+o+2+"px"}).show().attr("data-open",!0)},hideSubContent:function(){var e=this.$items;e.hide(),e.removeAttr("data-open")},update:function(){this.elem.trigger("comboxUpdate")},setActive:function(e){var t=this.elem.find("."+this.className.textbox);e&&(e="object"==typeof e?e.text:e,t.val(e))},updateEvent:function(){return[{name:"comboxUpdate"}]},getValue:function(){var e=this.options.value;return e=t.isObject(e)?e.value:e}})}(jQuery,_),function(e){"use strict";e.formbuilder.menu.add("colorpicker",{create:function(){return e(["<div class='",this.className.container,"'>","<div class='",this.className.picker,"'></div>","</div>"].join(""))},className:{container:"formbuilder-menu-colorpicker",picker:"formbuilder-menu-colorpicker-picker"},options:{},bindEvent:function(){var e=this.elem.find("."+this.className.picker),t=this.options.value||"#333333",o=this;e.colpick({flat:!0,layout:"hex",color:t,submitText:this.getLocalText("ok"),onSubmit:function(e,t,i,n){o.options.value="#"+t,o.update()}}),e.on("keydown","input",function(e){e.stopPropagation()})},update:function(){this.elem.trigger("colorpickerUpdate")},updateEvent:function(){return[{name:"colorpickerUpdate",filter:""}]}})}(jQuery),function(i){"use strict";i.formbuilder.shortcutKey._base={shiftKey:!1,altKey:!1,ctrlKey:!0,keyCode:null,targetType:"control",checking:function(e,t){return!0},fn:function(e,t){}},i.formbuilder.shortcutKey.add=function(e,t){this[e]=i.extend(!0,{},this._base,t)}}(jQuery),function(){"use strict";jQuery.formbuilder.shortcutKey.add("copy",{keyCode:67,targetType:"control",pattern:"design",checking:function(e,t){return e&&0<e.length},fn:function(e,t){t.copyControls()}})}(),function(){"use strict";jQuery.formbuilder.shortcutKey.add("cut",{keyCode:88,pattern:"design",targetType:"control",checking:function(e,t){return e&&0<e.length},fn:function(e,t){t.cutControls()}})}(),function(){"use strict";jQuery.formbuilder.shortcutKey.add("paste",{keyCode:86,pattern:"design",targetType:"cell",checking:function(e,t){t=t.cache;return t["cut-control"]||t["copy-control"]},fn:function(e,t){t.pasteControls()}})}(),function(p){"use strict";p.formbuilder.shortcutKey.add("paste-data",{keyCode:86,pattern:"applying",targetType:"cell",checking:function(e,t){return!0},fn:function(e,r){console.log("shortcutKey:paste-data");var l,s,c,t=p.formbuilder.clipboardData||window.clipboardData&&window.clipboardData.getData("Text")||"",d=0,u=[];t&&e&&e.length&&((t=t.split(/\r\n/))[t.length-1]||(t=t.slice(0,-1)),_.forEach(t,function(e,i){e=e.split(/\t/);_.forEach(e,function(e,t){u[i]=u[i]||[],'"'===e[0]&&'"'===e[e.length-1]&&-1!==e.indexOf("\n")&&(e=e.slice(1,-1)),u[i][t]=e})}),t=[],!u||0===u.length||e.length<=1||(l=r.getPosition(p(e[0])),_.forEach(e,function(e,t){var i,e=p(e),e=r.getPosition(e),n=e.x,e=e.y,o=r.findCellObj(n,e).colspan||1,a=r.findControlObj(n,e);s!==n?(s=n,d=c=0):(++c,c+=d),d=1<o?o-1:0,o=s-l.x,i=c,a&&void 0!==(a=u[o]&&u[o][i])&&r.updateProperties(r.findControl(n,e),"text",a)})))}}),"ActiveXObject"in window||window.ActiveXObject||document.addEventListener("paste",function(e){console.log("chrome:paste"),e.clipboardData&&(e=e.clipboardData.getData("text/plain"),p.formbuilder.clipboardData=e)})}(jQuery),function(){"use strict";jQuery.formbuilder.shortcutKey.add("remove",{keyCode:46,pattern:"design",targetType:"control",ctrlKey:!1,checking:function(e,t){return e&&0<e.length},fn:function(e,t){t.removeControls()}})}(),function(){"use strict";jQuery.formbuilder.menucontrol["align-center"]={options:{name:"align",value:"center",text:"align-center",image:"align-center.png"},type:"button",target:"control",property:!0}}(),function(){"use strict";jQuery.formbuilder.menucontrol["align-left"]={options:{name:"align",value:"left",text:"align-left",image:"align-left.png"},type:"button",target:"control",property:!0}}(),function(){"use strict";jQuery.formbuilder.menucontrol["align-right"]={options:{name:"align",value:"right",text:"align-right",image:"align-right.png"},type:"button",target:"control",property:!0}}(),function(){"use strict";jQuery.formbuilder.menucontrol.align={options:{name:"align",value:"left",text:"align-left",image:"align-left.png"},type:"button",target:"control",property:!0,keepSubmenu:!0}}(),function(){"use strict";jQuery.formbuilder.menucontrol["cancel-merge-cells"]={options:{name:null,value:!1,text:"canel-merge",image:"split-cells.png"},type:"button",target:"cell",property:!1,fn:function(e,t){t.cancelMergeCells(e,e)}}}(),function(){"use strict";jQuery.formbuilder.menucontrol["cell-background-color-display"]={options:{name:["background-color"],value:["red"],image:"background-color.png",text:"cell-background-color"},type:"button",target:"cell",property:!0,fn:function(e){}}}(),function(){"use strict";jQuery.formbuilder.menucontrol["cell-background-color-picker"]={options:{name:["background-color"],value:"#ffffff"},type:"colorpicker",target:"cell",property:!0}}(),function(){"use strict";jQuery.formbuilder.menucontrol["cell-border-color-display"]={options:{name:["border-color"],value:["red"],image:"border-color.png",text:"cell-border-color"},type:"button",target:"cell",property:!0,fn:function(e){}}}(),function(){"use strict";jQuery.formbuilder.menucontrol["cell-border-color-picker"]={options:{name:["border-color"],value:"#ffffff"},type:"colorpicker",target:"cell",property:!0}}(),function(){"use strict";jQuery.formbuilder.menucontrol["cell-border-none-bottom"]={options:{name:"border-style",value:"border-none--bottom",text:"border-none--bottom",image:"border-none--bottom.png"},type:"button",target:"cell",property:!0}}(),function(){"use strict";jQuery.formbuilder.menucontrol["cell-border-none-left"]={options:{name:"border-style",value:"border-none--left",text:"border-none--left",image:"border-none--left.png"},type:"button",target:"cell",property:!0}}(),function(){"use strict";jQuery.formbuilder.menucontrol["cell-border-none-right"]={options:{name:"border-style",value:"border-none--right",text:"border-none--right",image:"border-none--right.png"},type:"button",target:"cell",property:!0}}(),function(){"use strict";jQuery.formbuilder.menucontrol["cell-border-none-top"]={options:{name:"border-style",value:"border-none--top",text:"border-none--top",image:"border-none--top.png"},type:"button",target:"cell",property:!0}}(),function(){"use strict";jQuery.formbuilder.menucontrol["cell-border-style-none"]={options:{name:"border-style-none",value:"border-none",text:"border-none",image:"border-none.png"},type:"button",target:"cell",property:!0,keepSubmenu:!0}}(),function(e){"use strict";var t={type:"button",target:"cell",property:!0,source:e.formbuilder["BORDER-STYLE"].slice(0,2),activeValueConver(i,e){var e=e.options.table["border-style"]||e.propertyField.table["border-style"],n=this.source||[];if(null==i||""==i)return e;"object"==typeof i&&(i=i["value"]);for(let e=0,t=n.length;e<t;e++){let t=n[e]["name"];if(i instanceof Array){if(!i.find(e=>e!=t))return t}else if(i==t)return t}return i}};e.formbuilder.menucontrol["cell-border-style"]={options:{name:"border-style",value:"border-solid",text:"border-solid",image:"border-solid.png"},keepSubmenu:!0,...t},e.formbuilder.menucontrol["cell-border-solid"]={options:{name:"border-style",value:"border-solid",text:"border-solid",image:"border-solid.png"},...t},e.formbuilder.menucontrol["cell-border-none"]={options:{name:"border-style",value:"border-none",text:"border-none",image:"border-none.png"},...t},e.formbuilder.menucontrol["cell-border-solid-heavy"]={options:{name:"border-style",value:"border-solid-heavy",text:"border-solid-heavy",image:"border-solid-heavy.png"},...t},e.formbuilder.menucontrol["cell-border-dashed"]={options:{name:"border-style",value:"border-dashed",text:"border-dashed",image:"border-dashed.png"},...t}}(jQuery),function(){"use strict";jQuery.formbuilder.menucontrol["copy-control"]={options:{name:null,value:!1,text:"copy",image:"copy.png"},type:"button",target:"control",property:!1,fn:function(e,t){t.copyControls()}}}(),function(){"use strict";jQuery.formbuilder.menucontrol["cut-control"]={options:{name:null,value:!1,text:"cut",image:"cut.png"},type:"button",target:"control",property:!1,fn:function(e,t){t.cutControls()}}}(),function(){"use strict";jQuery.formbuilder.menucontrol["font-color-display"]={options:{name:["color"],value:["red"],image:"color.png",text:"color"},type:"button",target:"control",property:!0,fn:function(e){}}}(),function(){"use strict";jQuery.formbuilder.menucontrol["font-color-picker"]={options:{name:["color"],value:"#333333"},type:"colorpicker",target:"control",property:!0}}(),function(){"use strict";jQuery.formbuilder.menucontrol["font-color"]={options:{name:["color"],value:["#333333"],image:"color.png",text:"color"},type:"button",target:"control",property:!0,fn:function(e){e()}}}(),function(e){"use strict";e.formbuilder.menucontrol["font-family"]={options:{name:"font-family",value:{text:"微软雅黑",value:"微软雅黑"},items:e.formbuilder["FONT-FAMILY"],readonly:!1,width:70},type:"combox",target:"control",property:!0}}(jQuery),function(e){"use strict";e.formbuilder.menucontrol["font-size"]={options:{name:"font-size",value:{text:12,value:12},items:e.formbuilder["FONT-SIZE"],readonly:!1,width:22},type:"combox",target:"control",property:!0}}(jQuery),function(){"use strict";jQuery.formbuilder.menucontrol["font-style-italic"]={options:{name:"font-style-italic",value:!1,text:"font-style-italic",image:"font-style-italic.png"},type:"button",target:"control",property:!0}}(),function(){"use strict";jQuery.formbuilder.menucontrol["font-weight"]={options:{name:"font-weight",value:!1,text:"font-weight",image:"font-weight.png"},type:"button",target:"control",property:!0}}(),function(){"use strict";jQuery.formbuilder.menucontrol["merge-cells"]={options:{name:null,value:!1,text:"merge",image:"merge-cells.png"},type:"button",target:"cell",property:!1,fn:function(e,t){t.mergeCells(e)}}}(),function(){"use strict";jQuery.formbuilder.menucontrol["paste-control"]={options:{name:null,value:!1,text:"paste",image:"paste.png"},type:"button",target:"cell",property:!1,fn:function(e,t){t.pasteControls()}}}(),function(){"use strict";jQuery.formbuilder.menucontrol["remove-controls"]={options:{name:null,value:!1,text:"remove",image:"remove.png"},type:"button",target:"control",property:!1,fn:function(e,t){t.removeControls()}}}(),function(){"use strict";jQuery.formbuilder.menucontrol["save-image"]={options:{name:"designSave",value:"save.svg",text:"save",image:"save.svg",url:""},type:"button",property:!1,fn:function(e,t){t.workspace.events?.designSave?.()},controlType:"image"}}(),function(){"use strict";jQuery.formbuilder.menucontrol["text-align-center"]={options:{name:"text-align",value:"center",text:"align-center",image:"text-align-center.png"},type:"button",target:"control",property:!0}}(),function(){"use strict";jQuery.formbuilder.menucontrol["text-align-left"]={options:{name:"text-align",value:"left",text:"align-left",image:"text-align-left.png"},type:"button",target:"control",property:!0}}(),function(){"use strict";jQuery.formbuilder.menucontrol["text-align-right"]={options:{name:"text-align",value:"right",text:"align-right",image:"text-align-right.png"},type:"button",target:"control",property:!0}}(),function(){"use strict";jQuery.formbuilder.menucontrol["text-align"]={options:{name:"text-align",value:"left",text:"align-left",image:"text-align-left.png"},type:"button",target:"control",property:!0,keepSubmenu:!0}}(),function(){"use strict";jQuery.formbuilder.menucontrol["text-decoration-underline"]={options:{name:"text-decoration-underline",value:!1,text:"text-decoration-underline",image:"text-decoration-underline.png"},type:"button",target:"control",property:!0}}(),function(){"use strict";jQuery.formbuilder.menucontrol.version={options:{name:"version",value:null,items:[],readonly:!1,width:50},type:"combox",property:!1}}(),function(){"use strict";jQuery.formbuilder.menucontrol["vertical-align-bottom"]={options:{name:"vertical-align",value:"bottom",text:"vertical-align-bottom",image:"vertical-align-bottom.png",selectValue:!1,cancelValue:!1},type:"button",target:"control",property:!0}}(),function(){"use strict";jQuery.formbuilder.menucontrol["vertical-align-middle"]={options:{name:"vertical-align",value:"middle",text:"vertical-align-middle",image:"vertical-align-middle.png",selectValue:!1,cancelValue:!1},type:"button",target:"control",property:!0}}(),function(){"use strict";jQuery.formbuilder.menucontrol["vertical-align-top"]={options:{name:"vertical-align",value:"top",text:"vertical-align-top",image:"vertical-align-top.png",selectValue:!1,cancelValue:!1},type:"button",target:"control",property:!0}}(),function(){"use strict";jQuery.formbuilder.menucontrol["vertical-align"]={options:{name:"vertical-align",value:"top",text:"vertical-align-top",image:"vertical-align-top.png"},type:"button",target:"control",property:!0,keepSubmenu:!0}}(),function(e){"use strict";e.formbuilder=e.formbuilder||{},e.formbuilder.config={_height:450,data:{},pattern:"design",language:"zh-CN",timezone:8,formatter:"YYYY-MM-DD HH:mm:ss",specificDate:"2000-01-01",systemInfo:{applicantDepartment:null,applicantName:null,applicantPhoneNumber:null,applicationDate:null,processId:null,processSteps:null,formNumber:null},toolbox:{},control:{showLabel:!1,expandImage:"expand.svg",collapseImage:"collapse.svg",order:["label","textbox","hidden","textarea","contenteditable","date","time","datetime","button","data-insert","data-remove","select","textvalue","radiogroup","checkboxgroup","image","file","link","multipleselectlabel"]},menu:{order:[["save-image","version"],["merge-cells","cancel-merge-cells"],["cut-control","copy-control","paste-control","remove-controls"],["font-family","font-size"],["font-weight","font-style-italic","text-decoration-underline",{name:"font-color-display",children:["font-color-picker"]},{name:"cell-background-color-display",children:["cell-background-color-picker"]},{name:"cell-border-color-display",children:["cell-border-color-picker"]}],[{name:"align",children:["align-left","align-center","align-right"]},{name:"vertical-align",children:["vertical-align-top","vertical-align-middle","vertical-align-bottom"]},{name:"text-align",children:["text-align-left","text-align-center","text-align-right"]}],{name:"cell-border-style",children:["cell-border-solid","cell-border-none"]},{name:"cell-border-style-none",children:["cell-border-none-top","cell-border-none-right","cell-border-none-bottom","cell-border-none-left"]},{name:"add-image",children:[]}],type:"concat",controls:{}},url:{images:"src/images/",imageupload:"please-replace-image-upload-server-url-in-config",fileupload:"please-replace-file-upload-server-url-in-config"},shortcutKey:{order:["cut","copy","paste","remove"]},contextmenu:{order:["cut","copy","paste","remove","merge","canel-merge","insert-row","insert-column","remove-row","remove-column"]},events:{updateDatasets:null,customControlClick:null,designSave:null,error:null},enable:{design:{},applying:{"paste-data":!1,"event-select-cells":!1,editable:!1},view:{}},paging:!1,verification:!0,autoResize:!0,readonly:!0,autoFitFullScreen:!0}}(jQuery,window); |