1 |
- (function(d){d.events.push(["initialized",function(){m=undefined;p=undefined;e=1;g=undefined}],false);var n=25;var m,p,e=1,g;var h=function(){return{padding:5,fontSize:10,lineHeight:20,renderHeader:function(s,q,r){},renderFooter:function(t,q,r,s){},renderHeaderCell:function(r,w,u,q,s,v,t){m.setFillColor(52,73,94);m.setTextColor(255,255,255);m.setFontStyle("bold");m.rect(r,w,u,q,"F");w+=t.lineHeight/2+m.internal.getLineHeight()/2;m.text(v,r+t.padding,w)},renderCell:function(r,z,u,q,s,v,w,t){m.setFillColor(w%2===0?245:255);m.setTextColor(50);m.rect(r,z,u,q,"F");z+=t.lineHeight/2+m.internal.getLineHeight()/2-2.5;m.text(v,r+t.padding,z)},margins:{right:40,left:40,top:50,bottom:40},startY:false,overflow:"ellipsize",overflowColumns:false,avoidPageSplit:false,extendWidth:true}};d.autoTable=function(t,v,s){s=s||{};t=t||[];m=this;var u=m.internal.getFontSize();o({columns:t,data:v});b(s);p={x:g.margins.left,y:g.startY===false?g.margins.top:g.startY};var q=g.margins.bottom+g.margins.top+g.lineHeight*(v.length+1)+5+g.startY;if(g.startY!==false&&g.avoidPageSplit&&q>m.internal.pageSize.height){e++;m.addPage();p.y=g.margins.top}g.renderHeader(m,e,g);var r=j(v,t);l(t,r);a(t,v,r);g.renderFooter(m,p,e,g);m.setFontSize(u);return this};d.autoTableEndPosY=function(){return p?p.y:false};d.autoTableEndPos=function(){return p};d.autoTableHtmlToJson=function(y,x){var u=[],r={},w=y.rows[0],v,q,s,t;if(x){r=[];for(v=0;v<w.cells.length;v++){r.push(w.cells[v]?w.cells[v].textContent:"")}for(v=1;v<y.rows.length;v++){q=y.rows[v];s=[];for(t=0;t<w.cells.length;t++){s.push(q.cells[t]?q.cells[t].textContent:"")}u.push(s)}return{columns:r,data:u}}else{for(v=0;v<w.cells.length;v++){r[v]=w.cells[v]?w.cells[v].textContent:""}for(v=1;v<y.rows.length;v++){q=y.rows[v];s={};for(t=0;t<w.cells.length;t++){s[r[t]]=q.cells[t]?q.cells[t].textContent:""}u.push(s)}return u}};function o(r){if(!r.columns||r.columns.length===0){var q=Object.keys(r.data[0]);Array.prototype.push.apply(r.columns,q);r.columns.forEach(function(t,s){r.columns[s]={title:t,key:q[s]}})}else{if(typeof r.columns[0]==="string"){r.data.forEach(function(v,t){var u={};for(var s=0;s<v.length;s++){u[s]=r.data[t][s]}r.data[t]=u});r.columns.forEach(function(t,s){r.columns[s]={title:t,key:s}})}else{}}}function b(q){g=h();Object.keys(q).forEach(function(r){g[r]=q[r]});m.setFontSize(g.fontSize);if(g.margins.horizontal!==undefined){g.margins.left=g.margins.horizontal;g.margins.right=g.margins.horizontal}else{g.margins.horizontal=g.margins.left}}function j(x,t){var s={};var u=0;t.forEach(function(A){var z=c(A.title||"",true);if(typeof A.width=="number"){z=A.width}else{x.forEach(function(C){if(!A.hasOwnProperty("key")){throw new Error("The key attribute is required in every header")}var B=c(i(C,A.key));if(B>z){z=B}})}s[A.key]=z;u+=z});var v=g.padding*2*t.length+g.margins.left+g.margins.right;var y=m.internal.pageSize.width-u-v;var w=Object.keys(s);if(y<0){var r=[];var q=0;if(g.overflowColumns===false){w.forEach(function(z){if(s[z]>n){r.push(z);q+=s[z]}})}else{r=g.overflowColumns;r.forEach(function(z){q+=s[z]})}r.forEach(function(z){s[z]+=y*(s[z]/q)})}else{if(y>0&&g.extendWidth){w.forEach(function(z){s[z]+=y/w.length})}}return s}function l(t,r){if(!t){return}var q=1;if(g.overflow==="linebreak"){t.forEach(function(w){if(k(w)){var v=w.title||"";var u=m.splitTextToSize(v,r[w.key]);if(u.length>q){q=u.length}}})}var s=g.lineHeight+(q-1)*m.internal.getLineHeight()+5;t.forEach(function(w){var u=r[w.key]+g.padding*2;var v=w.title||"";if(g.overflow==="linebreak"){if(k(w)){v=m.splitTextToSize(v,r[w.key])}}else{if(g.overflow==="ellipsize"){v=f(r[w.key],v)}}g.renderHeaderCell(p.x,p.y,u,s,w.key,v,g);p.x+=u});m.setTextColor(70,70,70);m.setFontStyle("normal");p.y+=s;p.x=g.margins.left}function a(x,v,r){for(var s=0;s<v.length;s++){var w=v[s];var q=1;if(g.overflow==="linebreak"){x.forEach(function(A){if(k(A)){var z=i(w,A.key);var y=m.splitTextToSize(z,r[A.key]);if(y.length>q){q=y.length}}})}var u=g.lineHeight+(q-1)*m.internal.getLineHeight();x.forEach(function(A){var z=i(w,A.key);if(g.overflow==="linebreak"){if(k(A)){z=m.splitTextToSize(z,r[A.key])}}else{if(g.overflow==="ellipsize"){z=f(r[A.key],z)}}var y=r[A.key]+g.padding*2;g.renderCell(p.x,p.y,y,u,A.key,z,s,g);p.x=p.x+r[A.key]+g.padding*2});var t=(p.y+g.margins.bottom+g.lineHeight*2)>=m.internal.pageSize.height;if(t){g.renderFooter(m,p,e,g);m.addPage();p={x:g.margins.left,y:g.margins.top};e++;g.renderHeader(m,e,g);l(x,r)}else{p.y+=u;p.x=g.margins.left}}}function k(q){return g.overflowColumns===false||g.overflowColumns.indexOf(q.key)!==-1}function f(q,r){if(q>=c(r)){return r}while(q<c(r+"...")){if(r.length<2){break}r=r.substring(0,r.length-1)}r+="...";return r}function i(r,q){return r.hasOwnProperty(q)?""+r[q]:""}function c(q,r){if(r){m.setFontStyle("bold")}var s=m.getStringUnitWidth(q)*m.internal.getFontSize();if(r){m.setFontStyle("normal")}return s}})(jsPDF.API);
|