var WfPlanner;(function(n){var i=function(){function n(n,t,i){this.containerWidth=0;this.prefColCount=0;this.prefColWidth=0;this.maxHeight=0;this.isInited=!1;var r=this;n&&t&&!r.isInited&&(r.containerWidth=n.width,r.container=n,r.layoutOptions=t,r.isInited=!0,r.refineInputOptions(i),r.initVirtualColumns())}return n.prototype.calcAvgItemWidth=function(n){var i,r,t;if(n!=null&&n.length>0){for(i=n.length,r=0,t=0;tt.layoutOptions.hGap?i-t.layoutOptions.hGap:0)},n.prototype.calColumnCount=function(n){var t=this;return Math.floor((t.containerWidth+t.layoutOptions.hGap)/(n+t.layoutOptions.hGap))},n.prototype.refineInputOptions=function(n){var t=this,o=Math.min(t.layoutOptions.maxColWidth,t.calColumnWidth(t.layoutOptions.minColCount)),u,f,e,i,r;for(t.layoutOptions.maxColWidth=Math.max(t.layoutOptions.minColWidth,o),u=Math.max(t.layoutOptions.minColWidth,t.calColumnWidth(t.layoutOptions.maxColCount)),t.layoutOptions.minColWidth=Math.min(t.layoutOptions.maxColWidth,u),f=Math.min(t.layoutOptions.maxColCount,t.calColumnCount(t.layoutOptions.minColWidth)),t.layoutOptions.maxColCount=Math.max(t.layoutOptions.minColCount,f),e=Math.max(t.layoutOptions.minColCount,t.calColumnCount(t.layoutOptions.maxColWidth)),t.layoutOptions.minColCount=Math.min(t.layoutOptions.maxColCount,e),i=t.layoutOptions.minColCount,r=t.calcAvgItemWidth(n),r>0&&(r=t.normalizeColumnWidth(r),i=t.normalizeColumnCount(t.calColumnCount(r)));i<=t.layoutOptions.maxColCount;i++)if(t.layoutOptions.maxColWidth>=t.calColumnWidth(i))break;t.prefColCount=Math.min(i,t.layoutOptions.maxColCount);t.prefColWidth=t.normalizeColumnWidth(t.calColumnWidth(i))},n.prototype.initVirtualColumns=function(){var n=this,i=n.prefColCount,t;for(n.virtualColumns={},t=0;tt.maxHeight&&(t.maxHeight=n,t.container.setHeight&&t.container.setHeight(t.maxHeight))},n.prototype.add=function(n){var i=this,u;if(n!=null&&n.width>0&&n.height>0&&n.render){var e=n.height/n.width,f=Math.floor(Math.min(i.prefColWidth*e,n.height)),o=Math.max(f,i.layoutOptions.minItemHeight),r=i.findVirtualColumn(),t={};t.conWidth=i.prefColWidth;t.conHeight=o;t.itemWidth=Math.min(i.prefColWidth,n.width);t.itemHeight=f;t.left=r.left;t.top=r.top;t.dimIndex=r.idx;t.inputItem=n;u=n.render(t);t.finalSize=u;r.top+=u.height+i.layoutOptions.vGap;r.outputs.push(t);this.setMaxHeight(r.top)}},n.prototype.plan=function(n){var i=this,r,t;if(i.isInited&&n!=null&&n.length>0)for(r=n.length,t=0;t