UNPKG

exportdatafile

Version:
9 lines (8 loc) 35.6 kB
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }var Q=["EXCEL","PDF","TXT","ALL"];function P(l,f=!1){let u=new Date(l),t=new Date(u.getTime()+420*60*1e3),a=t.getUTCFullYear(),c=String(t.getUTCMonth()+1).padStart(2,"0"),m=String(t.getUTCDate()).padStart(2,"0"),w=String(t.getUTCHours()).padStart(2,"0"),d=String(t.getUTCMinutes()).padStart(2,"0"),g=String(t.getUTCSeconds()).padStart(2,"0");return f?`${m}-${c}-${a} ${w}:${d}:${g}`:`${m}-${c}-${a}`}function Z(l){return l.every(f=>Q.includes(f))}function j(l){let f=0;return l.forEach(u=>{u.child&&u.child.length>0?f+=j(u.child):f+=1}),f}var N=l=>{let f=[];return l.forEach(u=>{u.child&&u.child.length>0?f.push(...N(u.child)):f.push(u)}),f},O=l=>l.split("_").map(t=>t.charAt(0).toUpperCase()+t.slice(1)).join(" ");async function W(l,f,u,t){for(let a=0;a<t.length;a++){let c=t[a];if(_optionalChain([c, 'optionalAccess', _2 => _2.isImage])&&_optionalChain([c, 'optionalAccess', _3 => _3.imageSrc])&&typeof c.imageSrc=="string"&&c.imageSrc.startsWith("data:image"))try{let{buffer:m,extension:w}=ot(c.imageSrc),d=l.addImage({buffer:m,extension:w});f.addImage(d,{tl:{col:a,row:u.number-1},ext:{width:70,height:60},editAs:"oneCell"}),(!u.height||u.height<60)&&(u.height=35)}catch(m){console.error("\u274C Error adding image to row:",m),u.getCell(a+1).value="[Image]"}}}function ot(l){let f=l.match(/^data:image\/(\w+);base64,(.*)$/);if(!f)throw new Error("Invalid base64 image format");let u=f[1]==="jpg"?"jpeg":f[1],t=f[2],a=atob(t),c=a.length,m=new Uint8Array(c);for(let w=0;w<c;w++)m[w]=a.charCodeAt(w);return{buffer:m,extension:u}}var E=l=>{if(!l)return l;let f=l.replace(/^#/,"");return f.length===8?f.substring(2):f};function tt(l,f){let u=new Uint8Array(l),t="";for(let c=0;c<u.length;c++)t+=String.fromCharCode(u[c]);let a=btoa(t);return`data:application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;filename=${f};base64,${a}`}var _exceljs = require('exceljs'); var _exceljs2 = _interopRequireDefault(_exceljs);var rt=async({columns:l,data:f,grouping:u,date:t,excelSetting:a,title:c,footerSetting:m,groupingSetting:w})=>{let d=new _exceljs2.default.Workbook;l=l.filter(o=>!_optionalChain([o, 'access', _4 => _4.options, 'optionalAccess', _5 => _5.disabledColumn]));let g=d.addWorksheet(c||_optionalChain([a, 'optionalAccess', _6 => _6.titleExcel])),k=j(l),z=g.addRow([]);z.getCell(1).value=c||_optionalChain([a, 'optionalAccess', _7 => _7.titleExcel]),z.getCell(1).alignment={horizontal:"center"};let D=g.getColumn(k).letter;if(g.mergeCells(`A${z.number}:${D}${z.number}`),z.eachCell(o=>{o.font={color:{argb:"000000"},bold:!0,size:12}}),t){let o=g.addRow([]);o.getCell(1).value=`${t.caption?t.caption:"Tanggal "} : ${_optionalChain([t, 'optionalAccess', _8 => _8.start_date])} ${_optionalChain([t, 'optionalAccess', _9 => _9.end_date])?`s/d ${_optionalChain([t, 'optionalAccess', _10 => _10.end_date])}`:""}`,o.getCell(1).alignment={horizontal:"center"},g.mergeCells(`A${o.number}:${D}${o.number}`),o.eachCell(r=>{r.font={color:{argb:"00000"},bold:!0,size:12}})}let I=g.addRow([]);I.getCell(1).value=_optionalChain([a, 'optionalAccess', _11 => _11.additionalTextHeader])||"",I.getCell(1).alignment={horizontal:"center"},g.mergeCells(`A${I.number}:${D}${I.number}`),I.eachCell(o=>{o.font={color:{argb:"000000"},bold:!0,size:12}}),_optionalChain([a, 'optionalAccess', _12 => _12.customHeader])&&a.customHeader(g,k);let F=_optionalChain([a, 'optionalAccess', _13 => _13.startY])&&a.startY>0?a.startY:1;if(F>1)for(let o=1;o<F;o++)g.addRow([]);let M=l.some(o=>o.child&&o.child.length>0),h=g.addRow([]),R=M?g.addRow([]):null;l.forEach(o=>{if(o.child&&o.child.length>0){let r=h.actualCellCount+1,p=o.child.length;h.getCell(r).value=o.label,p>1&&g.mergeCells(h.number,r,h.number,r+p-1);for(let s=r;s<r+p;s++){let e=h.getCell(s);e.fill={type:"pattern",pattern:"solid",fgColor:{argb:_optionalChain([a, 'optionalAccess', _14 => _14.bgColor])||"E8E5E5"}},e.font={color:{argb:_optionalChain([a, 'optionalAccess', _15 => _15.txtColor])||"000000"},bold:!0},e.alignment={horizontal:"center",vertical:"middle"}}o.child.forEach((s,e)=>{if(R){let C=R.getCell(r+e);C.value=s.label,C.fill={type:"pattern",pattern:"solid",fgColor:{argb:_optionalChain([a, 'optionalAccess', _16 => _16.bgColor])||"E8E5E5"}},C.font={color:{argb:_optionalChain([a, 'optionalAccess', _17 => _17.txtColor])||"000000"},bold:!0};let T=_optionalChain([s, 'access', _18 => _18.options, 'optionalAccess', _19 => _19.halign])||(["RP","GR","NUMBER"].includes(_optionalChain([s, 'optionalAccess', _20 => _20.options, 'optionalAccess', _21 => _21.format])||"")?"right":"left"),i=_optionalChain([s, 'access', _22 => _22.options, 'optionalAccess', _23 => _23.valign])||"middle";C.alignment={horizontal:T,vertical:i}}})}else{let r=h.actualCellCount+1;h.getCell(r).value=o.label,h.getCell(r).fill={type:"pattern",pattern:"solid",fgColor:{argb:_optionalChain([a, 'optionalAccess', _24 => _24.bgColor])||"E8E5E5"}},h.getCell(r).font={color:{argb:_optionalChain([a, 'optionalAccess', _25 => _25.txtColor])||"000000"},bold:!0},h.getCell(r).alignment={horizontal:_optionalChain([o, 'access', _26 => _26.options, 'optionalAccess', _27 => _27.halign])||"center",vertical:_optionalChain([o, 'access', _28 => _28.options, 'optionalAccess', _29 => _29.valign])||"middle"},M&&R&&g.mergeCells(h.number,r,R.number,r)}}),N(l).forEach((o,r)=>{let p=r+1,s=g.getColumn(p);if(_optionalChain([o, 'access', _30 => _30.options, 'optionalAccess', _31 => _31.width]))s.width=o.options.width;else{let e=_optionalChain([o, 'access', _32 => _32.options, 'optionalAccess', _33 => _33.format])==="IMAGE"?15:20;s.width=e}});let B={};f.forEach(async o=>{if(_optionalChain([o, 'access', _34 => _34.detail, 'optionalAccess', _35 => _35.length])>0){if(u.length>0){let s=j(l),e=u.map(i=>o[i]!==void 0||o[i]!==null?`${O(i)} : ${o[i]}`:"").filter(Boolean).join(" | "),C=typeof w=="function"?w(o):w||{},T=g.addRow([e]);g.mergeCells(`A${T.number}:${String.fromCharCode(64+s)}${T.number}`),T.getCell(1).alignment={horizontal:_optionalChain([C, 'optionalAccess', _36 => _36.halign])||"left"},_optionalChain([C, 'optionalAccess', _37 => _37.txtColor])&&(T.getCell(1).font={bold:!0,color:{argb:_optionalChain([C, 'optionalAccess', _38 => _38.txtColor])||"000000"}}),_optionalChain([C, 'optionalAccess', _39 => _39.bgColor])&&(T.getCell(1).fill={type:"pattern",pattern:"solid",fgColor:{argb:_optionalChain([C, 'optionalAccess', _40 => _40.bgColor])}})}let r={};o.detail.forEach(async s=>{let C=N(l).map(i=>{if(_optionalChain([i, 'optionalAccess', _41 => _41.options, 'optionalAccess', _42 => _42.format])==="IMAGE"&&s[i.key])return{value:"",alignment:{horizontal:"center",vertical:"middle"},isImage:!0,imageSrc:s[i.key]};let A=_optionalChain([i, 'optionalAccess', _43 => _43.options, 'optionalAccess', _44 => _44.format])==="DATETIME"?P(s[i.key],!0):_optionalChain([i, 'optionalAccess', _45 => _45.options, 'optionalAccess', _46 => _46.format])==="DATE"?P(s[i.key]):s[i.key];i.formatter&&(A=i.formatter(A,s));let $={horizontal:_optionalChain([i, 'optionalAccess', _47 => _47.options, 'optionalAccess', _48 => _48.halign])?_optionalChain([i, 'optionalAccess', _49 => _49.options, 'optionalAccess', _50 => _50.halign]):_optionalChain([i, 'optionalAccess', _51 => _51.options, 'optionalAccess', _52 => _52.format])==="RP"||_optionalChain([i, 'optionalAccess', _53 => _53.options, 'optionalAccess', _54 => _54.format])==="GR"||_optionalChain([i, 'optionalAccess', _55 => _55.options, 'optionalAccess', _56 => _56.format])==="NUMBER"?"right":"left"},v=i.key,_=s[i.key];return B[v]=(B[v]||0)+Number(_),r[v]=(r[v]||0)+Number(_),{value:A,alignment:$,..._optionalChain([i, 'optionalAccess', _57 => _57.options, 'optionalAccess', _58 => _58.bgColor])&&{fgColor:{argb:i.options.bgColor}},..._optionalChain([i, 'optionalAccess', _59 => _59.options, 'optionalAccess', _60 => _60.txtColor])&&{color:{argb:i.options.txtColor}},numFmt:_optionalChain([i, 'optionalAccess', _61 => _61.options, 'optionalAccess', _62 => _62.format])==="RP"?"#,##0":_optionalChain([i, 'optionalAccess', _63 => _63.options, 'optionalAccess', _64 => _64.format])==="GR"?"#,##0.000":void 0}}),T=g.addRow(C.map(i=>i.value));C.forEach((i,A)=>{let $=T.getCell(A+1),v=["center","right","left","fill","justify","centerContinuous","distributed"],_=["top","middle","bottom","distributed","justify"],S,Y;i.alignment&&typeof i.alignment.horizontal=="string"&&v.includes(i.alignment.horizontal)&&(S=i.alignment.horizontal),i.alignment&&"vertical"in i.alignment&&typeof i.alignment.vertical=="string"&&_.includes(i.alignment.vertical)&&(Y=i.alignment.vertical),$.alignment={...S?{horizontal:S}:{},...Y?{vertical:Y}:{}},!i.isImage&&"numFmt"in i&&i.numFmt&&typeof i.value=="number"&&!isNaN(i.value)&&($.value=Number(i.value),$.numFmt=i.numFmt)}),await W(d,g,T,C)});let p=N(l);if(!_optionalChain([m, 'optionalAccess', _65 => _65.subTotal, 'optionalAccess', _66 => _66.disableSubtotal])){let s=g.addRow(l.map(()=>null));p.forEach((e,C)=>{if(_optionalChain([e, 'optionalAccess', _67 => _67.options, 'optionalAccess', _68 => _68.format])==="RP"||_optionalChain([e, 'optionalAccess', _69 => _69.options, 'optionalAccess', _70 => _70.format])==="GR"||_optionalChain([e, 'optionalAccess', _71 => _71.options, 'optionalAccess', _72 => _72.format])==="NUMBER"){let i=f.length+4-1,A=`SUM(${String.fromCharCode(65+C)}4:${String.fromCharCode(65+C)}${i})`,$=s.getCell(C+1),v=_optionalChain([m, 'optionalAccess', _73 => _73.subTotal, 'optionalAccess', _74 => _74.enableCount])&&u.length>0?" : "+o.detail.length:"",_=_optionalChain([m, 'optionalAccess', _75 => _75.subTotal, 'optionalAccess', _76 => _76.captionItem])?_optionalChain([m, 'optionalAccess', _77 => _77.subTotal, 'optionalAccess', _78 => _78.captionItem]):"";s.getCell(1).value=`${_optionalChain([m, 'optionalAccess', _79 => _79.subTotal, 'optionalAccess', _80 => _80.caption])||"SUB TOTAL"} ${v} ${_}`,s.getCell(1).alignment={horizontal:"center"},$.numFmt=_optionalChain([e, 'optionalAccess', _81 => _81.options, 'optionalAccess', _82 => _82.format])==="GR"?"#,##0.000":"#,##0",$.value={formula:A},s.getCell(C+1).value=_optionalChain([e, 'optionalAccess', _83 => _83.options, 'access', _84 => _84.disabledFooter])?"":r[e.key]}else s.getCell(C+1).value=""}),_optionalChain([a, 'optionalAccess', _85 => _85.grandTotalSetting, 'optionalAccess', _86 => _86.colSpan])&&g.mergeCells(`A${s.number}:${String.fromCharCode(64+Number(_optionalChain([a, 'optionalAccess', _87 => _87.grandTotalSetting, 'optionalAccess', _88 => _88.colSpan])))}${s.number}`),s.eachCell(e=>{e.fill={type:"pattern",pattern:"solid",fgColor:{argb:_optionalChain([a, 'optionalAccess', _89 => _89.bgColor])||"#E8E5E5"},bgColor:{argb:_optionalChain([a, 'optionalAccess', _90 => _90.bgColor])||"#E8E5E5"}},e.font={color:{argb:_optionalChain([a, 'optionalAccess', _91 => _91.txtColor])},bold:!0}})}}else{let p=N(l).map(e=>{if(_optionalChain([e, 'optionalAccess', _92 => _92.options, 'optionalAccess', _93 => _93.format])==="IMAGE"&&o[e.key])return{value:"",alignment:{horizontal:"center",vertical:"middle"},isImage:!0,imageSrc:o[e.key]};let C=_optionalChain([e, 'optionalAccess', _94 => _94.options, 'optionalAccess', _95 => _95.format])==="DATETIME"?P(o[e.key]):_optionalChain([e, 'optionalAccess', _96 => _96.options, 'optionalAccess', _97 => _97.format])==="DATE"?P(o[e.key]):o[e.key];e.formatter&&(C=e.formatter(C,o));let T={horizontal:_optionalChain([e, 'optionalAccess', _98 => _98.options, 'optionalAccess', _99 => _99.halign])?_optionalChain([e, 'optionalAccess', _100 => _100.options, 'optionalAccess', _101 => _101.halign]):_optionalChain([e, 'optionalAccess', _102 => _102.options, 'optionalAccess', _103 => _103.format])==="RP"||_optionalChain([e, 'optionalAccess', _104 => _104.options, 'optionalAccess', _105 => _105.format])==="GR"||_optionalChain([e, 'optionalAccess', _106 => _106.options, 'optionalAccess', _107 => _107.format])==="NUMBER"?"right":"left"},i=e.key,A=o[e.key];return B[i]=(B[i]||0)+Number(A),{value:C,alignment:T,..._optionalChain([e, 'optionalAccess', _108 => _108.options, 'optionalAccess', _109 => _109.bgColor])&&{fgColor:{argb:e.options.bgColor}},..._optionalChain([e, 'optionalAccess', _110 => _110.options, 'optionalAccess', _111 => _111.txtColor])&&{color:{argb:e.options.txtColor}},numFmt:_optionalChain([e, 'optionalAccess', _112 => _112.options, 'optionalAccess', _113 => _113.format])==="RP"?"#,##0":_optionalChain([e, 'optionalAccess', _114 => _114.options, 'optionalAccess', _115 => _115.format])==="GR"?"#,##0.000":void 0}}),s=g.addRow(p.map(e=>e.value));p.forEach((e,C)=>{let T=s.getCell(C+1),i=["center","right","left","fill","justify","centerContinuous","distributed"],A=["top","middle","bottom","distributed","justify"],$,v;e.alignment&&typeof e.alignment.horizontal=="string"&&i.includes(e.alignment.horizontal)&&($=e.alignment.horizontal),e.alignment&&"vertical"in e.alignment&&typeof e.alignment.vertical=="string"&&A.includes(e.alignment.vertical)&&(v=e.alignment.vertical),T.alignment={...$?{horizontal:$}:{},...v?{vertical:v}:{}},!e.isImage&&"numFmt"in e&&e.numFmt&&typeof e.value=="number"&&!isNaN(e.value)&&(T.value=Number(e.value),T.numFmt=e.numFmt),!e.isImage&&"fgColor"in e&&e.fgColor&&(T.fill={type:"pattern",pattern:"solid",fgColor:e.fgColor}),!e.isImage&&"color"in e&&e.color&&(T.font={color:e.color})}),await W(d,g,s,p)}});let L=g.addRow(l.map(()=>null)),V=N(l);_optionalChain([m, 'optionalAccess', _116 => _116.grandTotal, 'optionalAccess', _117 => _117.disableGrandTotal])||(V.forEach((o,r)=>{if(_optionalChain([o, 'optionalAccess', _118 => _118.options, 'optionalAccess', _119 => _119.format])==="RP"||_optionalChain([o, 'optionalAccess', _120 => _120.options, 'optionalAccess', _121 => _121.format])==="GR"||_optionalChain([o, 'optionalAccess', _122 => _122.options, 'optionalAccess', _123 => _123.format])==="NUMBER"){let s=f.length+4-1,e=`SUM(${String.fromCharCode(65+r)}4:${String.fromCharCode(65+r)}${s})`,C=L.getCell(r+1),T=_optionalChain([m, 'optionalAccess', _124 => _124.grandTotal, 'optionalAccess', _125 => _125.enableCount])?u.length>0?" : "+f.map($=>$.detail.length).reduce(($,v)=>$+v,0):" : "+f.length:"",i=_optionalChain([m, 'optionalAccess', _126 => _126.grandTotal, 'optionalAccess', _127 => _127.captionItem])?_optionalChain([m, 'optionalAccess', _128 => _128.grandTotal, 'optionalAccess', _129 => _129.captionItem]):"",A=`${_optionalChain([m, 'optionalAccess', _130 => _130.grandTotal, 'optionalAccess', _131 => _131.caption])||"GRAND TOTAL"} ${T} ${i}`;L.getCell(1).value=A,L.getCell(1).alignment={horizontal:"center"},C.numFmt=_optionalChain([o, 'optionalAccess', _132 => _132.options, 'optionalAccess', _133 => _133.format])==="GR"?"#,##0.000":"#,##0",C.value={formula:e},L.getCell(r+1).value=_optionalChain([o, 'optionalAccess', _134 => _134.options, 'access', _135 => _135.disabledFooter])?"":B[o.key]}else L.getCell(r+1).value=""}),_optionalChain([a, 'optionalAccess', _136 => _136.grandTotalSetting, 'optionalAccess', _137 => _137.colSpan])&&g.mergeCells(`A${L.number}:${String.fromCharCode(64+Number(_optionalChain([a, 'optionalAccess', _138 => _138.grandTotalSetting, 'optionalAccess', _139 => _139.colSpan])))}${L.number}`),L.eachCell(o=>{o.fill={type:"pattern",pattern:"solid",fgColor:{argb:_optionalChain([a, 'optionalAccess', _140 => _140.bgColor])||"#E8E5E5"},bgColor:{argb:_optionalChain([a, 'optionalAccess', _141 => _141.bgColor])||"#E8E5E5"}},o.font={color:{argb:_optionalChain([a, 'optionalAccess', _142 => _142.txtColor])},bold:!0}})),_optionalChain([a, 'optionalAccess', _143 => _143.customFooter])&&a.customFooter(g,k);let n=await d.xlsx.writeBuffer(),y=`${_optionalChain([a, 'optionalAccess', _144 => _144.titleExcel])||c}.xlsx`,G=tt(n,y);_optionalChain([a, 'optionalAccess', _145 => _145.returnBuffer])&&a.returnBuffer(G);let x=new Blob([n],{type:"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"}),b=document.createElement("a");b.href=URL.createObjectURL(x),b.download=`${_optionalChain([a, 'optionalAccess', _146 => _146.titleExcel])||c}.xlsx`,document.body.appendChild(b),b.click(),document.body.removeChild(b)},J=rt;var _jspdf = require('jspdf'); var _jspdf2 = _interopRequireDefault(_jspdf);var _jspdfautotable = require('jspdf-autotable'); var _jspdfautotable2 = _interopRequireDefault(_jspdfautotable);var nt=({columns:l,data:f,grouping:u,pdfSetting:t,date:a,title:c,footerSetting:m,groupingSetting:w})=>{let d=new (0, _jspdf2.default)(_optionalChain([t, 'optionalAccess', _147 => _147.orientation]),_optionalChain([t, 'optionalAccess', _148 => _148.unit]),[_optionalChain([t, 'optionalAccess', _149 => _149.width])||297,_optionalChain([t, 'optionalAccess', _150 => _150.height])||210]),g=[],k=a?30:20;l=l.filter(n=>!_optionalChain([n, 'access', _151 => _151.options, 'optionalAccess', _152 => _152.disabledColumn])),d.setFontSize(10);let z=d.internal.pageSize.getWidth(),D=d.splitTextToSize(_optionalChain([t, 'optionalAccess', _153 => _153.textHeaderLeft])||"",110);d.text(D,15,18),d.text(`${c||_optionalChain([t, 'optionalAccess', _154 => _154.titlePdf])}`,z-15,18,{align:"right"}),a&&d.text(`${a.caption?a.caption:"TANGGAL "} : ${_optionalChain([a, 'optionalAccess', _155 => _155.start_date])} ${_optionalChain([a, 'optionalAccess', _156 => _156.end_date])?`s/d ${_optionalChain([a, 'optionalAccess', _157 => _157.end_date])}`:""}`,z-15,22,{align:"right"}),typeof _optionalChain([t, 'optionalAccess', _158 => _158.customHeader])=="function"&&t.customHeader(d,k,_jspdfautotable2.default),d.setProperties({title:c||_optionalChain([t, 'optionalAccess', _159 => _159.titlePdf])}),_optionalChain([t, 'optionalAccess', _160 => _160.startY])&&(k=t.startY);let I=[],F=[],M=l.some(n=>n.child&&n.child.length>0);l.forEach(n=>{let y={textColor:`#${E(_optionalChain([t, 'optionalAccess', _161 => _161.txtColor])||"000")}`,fillColor:`#${E(_optionalChain([t, 'optionalAccess', _162 => _162.bgColor])||"E8E5E5")}`,..._optionalChain([n, 'optionalAccess', _163 => _163.options, 'optionalAccess', _164 => _164.width])&&{cellWidth:_optionalChain([n, 'optionalAccess', _165 => _165.options, 'optionalAccess', _166 => _166.width])},fontStyle:"bold",..._optionalChain([n, 'optionalAccess', _167 => _167.options, 'optionalAccess', _168 => _168.valign])?{valign:n.options.valign}:{},halign:_nullishCoalesce(_optionalChain([n, 'optionalAccess', _169 => _169.options, 'optionalAccess', _170 => _170.halign]), () => ((["RP","GR","NUMBER"].includes(_optionalChain([n, 'optionalAccess', _171 => _171.options, 'optionalAccess', _172 => _172.format])||"")?"right":"left")))};M?n.child&&n.child.length>0?(I.push({content:n.label,colSpan:n.child.length,styles:y}),n.child.forEach(G=>{F.push({content:G.label,key:G.key,options:G.options,styles:{...y,halign:_nullishCoalesce(_optionalChain([G, 'optionalAccess', _173 => _173.options, 'optionalAccess', _174 => _174.halign]), () => ((["RP","GR","NUMBER"].includes(_optionalChain([G, 'optionalAccess', _175 => _175.options, 'optionalAccess', _176 => _176.format])||"")?"right":"left")))}})})):I.push({content:n.label,rowSpan:2,key:n.key,options:n.options,styles:y}):I.push({content:n.label,key:n.key,options:n.options,styles:y})}),_optionalChain([t, 'optionalAccess', _177 => _177.header, 'optionalAccess', _178 => _178.column])||(g.push(I),M&&F.length>0&&g.push(F));let h={};f.forEach(n=>{if(_optionalChain([n, 'access', _179 => _179.detail, 'optionalAccess', _180 => _180.length])>0){if(u.length>0){let x=j(l),b=u.map(p=>n[p]!==void 0||n[p]!==null?`${O(p)} : ${n[p]}`:"").filter(Boolean).join(" | "),o=typeof w=="function"?w(n):w||{},r=[{content:b,colSpan:x,styles:{fontStyle:"bold",halign:_optionalChain([o, 'optionalAccess', _181 => _181.halign])||"left",textColor:`#${E(_optionalChain([o, 'optionalAccess', _182 => _182.txtColor])||"000")}`,fillColor:`#${E(_optionalChain([o, 'optionalAccess', _183 => _183.bgColor])||"FFF")}`}}];g.push(r)}let y={},G=N(l);if(n.detail.forEach(x=>{let b=G.map(o=>{let r=x[o.key],p=o.key;o.formatter&&(r=o.formatter(r,x));let s=x[o.key];h[p]=(h[p]||0)+Number(s||0),y[p]=(y[p]||0)+Number(s||0);let e=_optionalChain([o, 'access', _184 => _184.options, 'optionalAccess', _185 => _185.format])==="IMAGE";return{content:(()=>{switch(_optionalChain([o, 'optionalAccess', _186 => _186.options, 'optionalAccess', _187 => _187.format])){case"RP":return r!==void 0?Number(r||0).toLocaleString("kr-ko"):"";case"GR":return r!==void 0?Number(r||0).toFixed(3):"";case"NUMBER":return r!==void 0?Number(r||0):"";case"IMAGE":return"";case"DATETIME":return r!==void 0?P(r||new Date,!0):"";case"DATE":return r!==void 0?P(r||new Date):"";default:return r!==void 0?r.toString():""}})(),foto:e?r:null,styles:{textColor:_optionalChain([o, 'optionalAccess', _188 => _188.options, 'optionalAccess', _189 => _189.txtColor])?`#${E(_optionalChain([o, 'optionalAccess', _190 => _190.options, 'optionalAccess', _191 => _191.txtColor]))}`:"#000",fillColor:_optionalChain([o, 'optionalAccess', _192 => _192.options, 'optionalAccess', _193 => _193.bgColor])?`#${E(_optionalChain([o, 'optionalAccess', _194 => _194.options, 'optionalAccess', _195 => _195.bgColor]))}`:void 0,halign:_optionalChain([o, 'optionalAccess', _196 => _196.options, 'optionalAccess', _197 => _197.halign])?_optionalChain([o, 'optionalAccess', _198 => _198.options, 'optionalAccess', _199 => _199.halign]):_optionalChain([o, 'optionalAccess', _200 => _200.options, 'optionalAccess', _201 => _201.format])==="RP"||_optionalChain([o, 'optionalAccess', _202 => _202.options, 'optionalAccess', _203 => _203.format])==="GR"||_optionalChain([o, 'optionalAccess', _204 => _204.options, 'optionalAccess', _205 => _205.format])==="NUMBER"||typeof r=="number"?"right":"left"}}});g.push(b)}),!_optionalChain([m, 'optionalAccess', _206 => _206.subTotal, 'optionalAccess', _207 => _207.disableSubtotal])){let x=[];G.forEach(p=>{let s=y[p.key];_optionalChain([p, 'optionalAccess', _208 => _208.options, 'optionalAccess', _209 => _209.format])==="RP"||_optionalChain([p, 'optionalAccess', _210 => _210.options, 'optionalAccess', _211 => _211.format])==="GR"||_optionalChain([p, 'optionalAccess', _212 => _212.options, 'optionalAccess', _213 => _213.format])==="NUMBER"?x.push({content:_optionalChain([p, 'optionalAccess', _214 => _214.options, 'optionalAccess', _215 => _215.disabledFooter])?"":(()=>{switch(_optionalChain([p, 'optionalAccess', _216 => _216.options, 'optionalAccess', _217 => _217.format])){case"RP":return s.toLocaleString("kr-ko");case"GR":return s.toFixed(3);case"NUMBER":return s;default:return s.toString()}})(),styles:{halign:_optionalChain([p, 'optionalAccess', _218 => _218.options, 'optionalAccess', _219 => _219.halign])||"right",textColor:`#${E(_optionalChain([t, 'optionalAccess', _220 => _220.txtColor])||"000")}`,fillColor:`#${E(_optionalChain([t, 'optionalAccess', _221 => _221.bgColor])||"E8E5E5")}`,fontStyle:"bold"}}):x.push({content:"",styles:{textColor:`#${E(_optionalChain([t, 'optionalAccess', _222 => _222.txtColor])||"000")}`,fillColor:`#${E(_optionalChain([t, 'optionalAccess', _223 => _223.bgColor])||"E8E5E5")}`,fontStyle:"bold"}})});let b=_optionalChain([t, 'optionalAccess', _224 => _224.grandTotalSetting, 'optionalAccess', _225 => _225.colSpan])?Number(_optionalChain([t, 'optionalAccess', _226 => _226.grandTotalSetting, 'optionalAccess', _227 => _227.colSpan])||0)+1:0,o=_optionalChain([m, 'optionalAccess', _228 => _228.subTotal, 'optionalAccess', _229 => _229.enableCount])&&u.length>0?" : "+n.detail.length:"",r=_optionalChain([m, 'optionalAccess', _230 => _230.subTotal, 'optionalAccess', _231 => _231.captionItem])?_optionalChain([m, 'optionalAccess', _232 => _232.subTotal, 'optionalAccess', _233 => _233.captionItem]):"";x[0]={content:`${_optionalChain([m, 'optionalAccess', _234 => _234.subTotal, 'optionalAccess', _235 => _235.caption])||"SUB TOTAL"}${o} ${r}`,colSpan:b,styles:{textColor:`#${E(_optionalChain([t, 'optionalAccess', _236 => _236.txtColor])||"000")}`,fillColor:`#${E(_optionalChain([t, 'optionalAccess', _237 => _237.bgColor])||"E8E5E5")}`,fontStyle:"bold",halign:"center"}},_optionalChain([t, 'optionalAccess', _238 => _238.grandTotalSetting, 'optionalAccess', _239 => _239.colSpan])&&x.splice(1,_optionalChain([t, 'optionalAccess', _240 => _240.grandTotalSetting, 'optionalAccess', _241 => _241.colSpan])),g.push(x)}}else{let y=(b,o)=>{let r=o[b.key],p=b.key;if(b.formatter&&(r=b.formatter(r,o)),!_optionalChain([b, 'access', _242 => _242.options, 'optionalAccess', _243 => _243.disabledFooter])){let T=o[b.key];h[p]=(h[p]||0)+Number(T||0)}let s=(()=>{switch(_optionalChain([b, 'optionalAccess', _244 => _244.options, 'optionalAccess', _245 => _245.format])){case"RP":return r!==void 0?Number(r||0).toLocaleString("kr-ko"):"";case"GR":return r!==void 0?Number(r||0).toFixed(3):"";case"NUMBER":return r!==void 0?Number(r||0):"";case"IMAGE":return"";case"DATETIME":return r!==void 0?P(r||new Date,!0):"";case"DATE":return r!==void 0?P(r||new Date):"";default:return r!==void 0?_optionalChain([r, 'optionalAccess', _246 => _246.toString, 'call', _247 => _247()]):""}})(),e=_optionalChain([b, 'optionalAccess', _248 => _248.options, 'optionalAccess', _249 => _249.halign])?_optionalChain([b, 'optionalAccess', _250 => _250.options, 'optionalAccess', _251 => _251.halign]):_optionalChain([b, 'optionalAccess', _252 => _252.options, 'optionalAccess', _253 => _253.format])==="RP"||_optionalChain([b, 'optionalAccess', _254 => _254.options, 'optionalAccess', _255 => _255.format])==="GR"||_optionalChain([b, 'optionalAccess', _256 => _256.options, 'optionalAccess', _257 => _257.format])==="NUMBER"||typeof r=="number"?"right":"left",C=_optionalChain([b, 'access', _258 => _258.options, 'optionalAccess', _259 => _259.format])==="IMAGE";return{options:_optionalChain([b, 'optionalAccess', _260 => _260.options]),content:s,foto:C?r:null,styles:{halign:e,textColor:_optionalChain([b, 'optionalAccess', _261 => _261.options, 'optionalAccess', _262 => _262.txtColor])?`#${E(_optionalChain([b, 'optionalAccess', _263 => _263.options, 'optionalAccess', _264 => _264.txtColor]))}`:"#000",fillColor:_optionalChain([b, 'optionalAccess', _265 => _265.options, 'optionalAccess', _266 => _266.bgColor])?`#${E(_optionalChain([b, 'optionalAccess', _267 => _267.options, 'optionalAccess', _268 => _268.bgColor]))}`:void 0}}},x=N(l).map(b=>y(b,n));g.push(x)}});let R=N(l);if(!_optionalChain([m, 'optionalAccess', _269 => _269.grandTotal, 'optionalAccess', _270 => _270.disableGrandTotal])){let n=[];R.forEach(r=>{let p=h[r.key],s=["RP","GR","NUMBER"].includes(_optionalChain([r, 'optionalAccess', _271 => _271.options, 'optionalAccess', _272 => _272.format])||""),e=_optionalChain([r, 'optionalAccess', _273 => _273.options, 'optionalAccess', _274 => _274.disabledFooter])?"":(()=>{if(!s)return"";switch(_optionalChain([r, 'access', _275 => _275.options, 'optionalAccess', _276 => _276.format])){case"RP":return Number(p||0).toLocaleString("kr-KO");case"GR":return Number(p||0).toFixed(3);case"NUMBER":return Number(p||0);default:return(p||0).toString()}})();n.push({options:_optionalChain([r, 'optionalAccess', _277 => _277.options]),content:e,styles:{halign:_optionalChain([r, 'optionalAccess', _278 => _278.options, 'optionalAccess', _279 => _279.halign])?r.options.halign:s?"right":"left",textColor:`#${E(_optionalChain([t, 'optionalAccess', _280 => _280.txtColor])||"000")}`,fillColor:`#${E(_optionalChain([t, 'optionalAccess', _281 => _281.bgColor])||"E8E5E5")}`,fontStyle:"bold"}})});let y=Number(_optionalChain([t, 'optionalAccess', _282 => _282.grandTotalSetting, 'optionalAccess', _283 => _283.colSpan])||0),G=Math.min(y+1,R.length),x=_optionalChain([m, 'optionalAccess', _284 => _284.grandTotal, 'optionalAccess', _285 => _285.enableCount])?u.length>0?f.reduce((r,p)=>r+p.detail.length,0):f.length:0,b=_optionalChain([m, 'optionalAccess', _286 => _286.grandTotal, 'optionalAccess', _287 => _287.captionItem])||"",o=`${_optionalChain([m, 'optionalAccess', _288 => _288.grandTotal, 'optionalAccess', _289 => _289.caption])||"GRAND TOTAL"}`+(x?` : ${x}`:"")+(b?` ${b}`:"");for(n[0]={content:o,colSpan:G,styles:{textColor:`#${E(_optionalChain([t, 'optionalAccess', _290 => _290.txtColor])||"000")}`,fillColor:`#${E(_optionalChain([t, 'optionalAccess', _291 => _291.bgColor])||"E8E5E5")}`,fontStyle:"bold",halign:"center"}},n.splice(1,G-1);n.length<R.length;)n.push({content:"",styles:{textColor:`#${E(_optionalChain([t, 'optionalAccess', _292 => _292.txtColor])||"000")}`,fillColor:`#${E(_optionalChain([t, 'optionalAccess', _293 => _293.bgColor])||"E8E5E5")}`,fontStyle:"bold"}});g.push(n)}if(typeof _optionalChain([t, 'optionalAccess', _294 => _294.addRow])=="function"&&_optionalChain([t, 'optionalAccess', _295 => _295.addRow, 'call', _296 => _296(g)]),!_optionalChain([t, 'optionalAccess', _297 => _297.disablePrintDate])){let n=j(l);g.push([{content:`Print Date : ${P(`${new Date}`)}`,colSpan:n,styles:{textColor:`#${E(_optionalChain([t, 'optionalAccess', _298 => _298.txtColor])||"000")}`,fillColor:`#${E(_optionalChain([t, 'optionalAccess', _299 => _299.bgColor])||"E8E5E5")}`,fontStyle:"italic"}}])}let U=[];_optionalChain([t, 'optionalAccess', _300 => _300.header, 'optionalAccess', _301 => _301.column])&&(U.push(I),M&&F.length>0&&U.push(F)),_jspdfautotable2.default.call(void 0, d,{head:U,body:g,startY:k,theme:_optionalChain([t, 'optionalAccess', _302 => _302.theme])||"plain",rowPageBreak:"avoid",margin:{top:_optionalChain([t, 'optionalAccess', _303 => _303.header, 'optionalAccess', _304 => _304.information])?30:10},bodyStyles:{fontSize:_optionalChain([t, 'optionalAccess', _305 => _305.fontSIze])||8},headStyles:{fontSize:_optionalChain([t, 'optionalAccess', _306 => _306.fontSIze])||8,textColor:`#${E(_optionalChain([t, 'optionalAccess', _307 => _307.txtColor])||"000")}`,fillColor:`#${E(_optionalChain([t, 'optionalAccess', _308 => _308.bgColor])||"E8E5E5")}`},tableLineColor:[255,255,255],didParseCell:function(n){let y=n.column.index;_optionalChain([R, 'access', _309 => _309[y], 'optionalAccess', _310 => _310.options, 'optionalAccess', _311 => _311.format])==="IMAGE"&&n.cell.raw&&n.cell.raw.foto&&(n.row.height=20,n.cell.styles.valign="middle",n.cell.styles.halign="center")},didDrawPage:function(n){if(_optionalChain([t, 'optionalAccess', _312 => _312.header, 'optionalAccess', _313 => _313.information])&&n.pageNumber>1){d.setFontSize(10);let y=d.internal.pageSize.getWidth(),G=d.splitTextToSize(_optionalChain([t, 'optionalAccess', _314 => _314.textHeaderLeft])||"",110);d.text(G,15,18),d.text(`${c||_optionalChain([t, 'optionalAccess', _315 => _315.titlePdf])}`,y-15,18,{align:"right"}),a&&d.text(`${a.caption?a.caption:"TANGGAL "} : ${_optionalChain([a, 'optionalAccess', _316 => _316.start_date])} ${_optionalChain([a, 'optionalAccess', _317 => _317.end_date])?`s/d ${_optionalChain([a, 'optionalAccess', _318 => _318.end_date])}`:""}`,y-15,22,{align:"right"})}},didDrawCell:function(n){let{cell:y}=n,x=(y.raw||{}).foto,b=n.column.index;if(_optionalChain([R, 'access', _319 => _319[b], 'optionalAccess', _320 => _320.options, 'optionalAccess', _321 => _321.format])==="IMAGE"&&x){let p=y.x+(y.width-15)/2,s=y.y+(y.height-15)/2;try{d.addImage(x,"JPG",p,s,15,15)}catch(e){console.warn("\u274C Gagal render gambar:",e)}}}}),g=[],k=d.lastAutoTable.finalY;let B=d.internal.getNumberOfPages(),L=d.internal.pageSize.width,V=d.internal.pageSize.height;d.setFontSize(10);for(let n=1;n<B+1;n++){let y=L/2,G=V-10;d.setPage(n),d.text(`${n} of ${B}`,y,G,{align:"center"})}if(typeof _optionalChain([t, 'optionalAccess', _322 => _322.customFooter])=="function"&&t.customFooter(d,k,_jspdfautotable2.default),_optionalChain([t, 'optionalAccess', _323 => _323.returnDataUri])){let n=d.output("datauristring");t.returnDataUri(n)}if(_optionalChain([t, 'optionalAccess', _324 => _324.openNewTab])){let n=d.output("bloburl");window.open(n)}else d.save(`${_optionalChain([t, 'optionalAccess', _325 => _325.titlePdf])||c}.pdf`)},K=nt;var it=l=>{let f=[],u=l.copy?2:1;for(let t=0;t<u;t++){let a=l.data.map(c=>{let m=l.template;for(;/\n!!LOOP\((.+)\)(\{\n(.*\n)+\})\n/gm.exec(m);)m=m.replace(/\n!!LOOP\((.+)\)(\{\n(.*\n)+\})\n/,(w,d,g)=>{let k=g.replace(/^\{/,"").replace(/\}$/,"");return(Array.isArray(c[d])?c[d]:[c[d]]).reduce((I,F)=>I+k.replace(/\{([a-z0-9_]+)\}/gm,M=>{let h=M.replace(/(\{|\})/g,"");if(h.match(/nama_barang/)){let R=h.match(/nama_barang/),U=h==="nama_barang2"?[20,40]:h==="nama_barang3"?[40,60]:[0,20];return _optionalChain([F, 'access', _326 => _326[R], 'optionalAccess', _327 => _327.slice, 'call', _328 => _328(...U), 'access', _329 => _329.trim, 'call', _330 => _330()])||""}if(h.match(/deskripsi_jual/)){let R=h.match(/deskripsi_jual/),U=h==="deskripsi_jual2"?[20,40]:h==="deskripsi_jual3"?[40,60]:[0,20];return _optionalChain([F, 'access', _331 => _331[R], 'optionalAccess', _332 => _332.slice, 'call', _333 => _333(...U), 'access', _334 => _334.trim, 'call', _335 => _335()])||""}if(h.match(/deskripsi/)){let R=h.match(/deskripsi/),U=h==="deskripsi2"?[20,40]:h==="deskripsi3"?[40,60]:[0,20];return _optionalChain([F, 'access', _336 => _336[R], 'optionalAccess', _337 => _337.slice, 'call', _338 => _338(...U), 'access', _339 => _339.trim, 'call', _340 => _340()])||""}return F[h]||""}),"").replace(/\n(\s)+\n/gm,` `)});return m.replace(/\{([a-z0-9_]+)\}/gm,w=>{let d=w.replace(/(\{|\})/g,"");return d.match(/auto_cut/)?` VA`:c[d]||""}).replace(/\n(\s)+\n/gm,` `).replace(/~new_line~/gm,` `).replace(/!!LOOP\(detail\)/g,"").replace(/[}{]/g,"")});for(let c in a)a[c]+=` `;f.push(...a)}return f},lt=async(l,f)=>{let u=it(l),t=new Blob([_optionalChain([u, 'optionalAccess', _341 => _341.join, 'call', _342 => _342(` `)])||""],{type:"text/plain"}),a=document.createElement("a");a.href=URL.createObjectURL(t),a.download=f,document.body.appendChild(a),a.click(),document.body.removeChild(a)},q=lt;var Ft=({columns:l,data:f,grouping:u,date:t,type:a,txtSetting:c,pdfSetting:m,excelSetting:w,title:d,footerSetting:g,groupingSetting:k})=>{let z={data:[_optionalChain([c, 'optionalAccess', _343 => _343.dataTxt])],template:_optionalChain([c, 'optionalAccess', _344 => _344.templateTxt]),copy:_optionalChain([c, 'optionalAccess', _345 => _345.copy])};if(f.length===0)throw new Error("Data is required");if(a.length===0)throw new Error("Type is required");if(!Z(a))throw new Error('Type Export must use ["EXCEL", "PDF", "TXT", "ALL"]');a.forEach(D=>{D==="PDF"?K({pdfSetting:m,date:t,data:f,type:a,columns:l,grouping:u,title:d,footerSetting:g,groupingSetting:k}):D==="TXT"?q(z,_optionalChain([c, 'optionalAccess', _346 => _346.titleTxt])||""):D==="EXCEL"?J({date:t,data:f,type:a,columns:l,grouping:u,excelSetting:w,title:d,footerSetting:g,groupingSetting:k}):(J({date:t,data:f,type:a,columns:l,grouping:u,excelSetting:w,title:d,groupingSetting:k}),K({pdfSetting:m,date:t,data:f,type:a,columns:l,grouping:u,title:d,groupingSetting:k}),q(z,_optionalChain([c, 'optionalAccess', _347 => _347.titleTxt])||""))})};exports.ExportData = Ft; //# sourceMappingURL=index.js.map